Kaydet (Commit) 4dc5dd1f authored tarafından Thomas Heller's avatar Thomas Heller

Check for NULL return value from new_CArgObject calls.

üst 271a8689
...@@ -1282,6 +1282,8 @@ c_void_p_from_param(PyObject *type, PyObject *value) ...@@ -1282,6 +1282,8 @@ c_void_p_from_param(PyObject *type, PyObject *value)
struct fielddesc *fd = getentry("z"); struct fielddesc *fd = getentry("z");
parg = new_CArgObject(); parg = new_CArgObject();
if (parg == NULL)
return NULL;
parg->pffi_type = &ffi_type_pointer; parg->pffi_type = &ffi_type_pointer;
parg->tag = 'z'; parg->tag = 'z';
parg->obj = fd->setfunc(&parg->value, value, 0); parg->obj = fd->setfunc(&parg->value, value, 0);
...@@ -1297,6 +1299,8 @@ c_void_p_from_param(PyObject *type, PyObject *value) ...@@ -1297,6 +1299,8 @@ c_void_p_from_param(PyObject *type, PyObject *value)
struct fielddesc *fd = getentry("Z"); struct fielddesc *fd = getentry("Z");
parg = new_CArgObject(); parg = new_CArgObject();
if (parg == NULL)
return NULL;
parg->pffi_type = &ffi_type_pointer; parg->pffi_type = &ffi_type_pointer;
parg->tag = 'Z'; parg->tag = 'Z';
parg->obj = fd->setfunc(&parg->value, value, 0); parg->obj = fd->setfunc(&parg->value, value, 0);
...@@ -1333,6 +1337,8 @@ c_void_p_from_param(PyObject *type, PyObject *value) ...@@ -1333,6 +1337,8 @@ c_void_p_from_param(PyObject *type, PyObject *value)
CFuncPtrObject *func; CFuncPtrObject *func;
func = (CFuncPtrObject *)value; func = (CFuncPtrObject *)value;
parg = new_CArgObject(); parg = new_CArgObject();
if (parg == NULL)
return NULL;
parg->pffi_type = &ffi_type_pointer; parg->pffi_type = &ffi_type_pointer;
parg->tag = 'P'; parg->tag = 'P';
Py_INCREF(value); Py_INCREF(value);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment