From efa27273349ad25400682e232e6dc793198320da Mon Sep 17 00:00:00 2001 From: Thomas Heller Date: Mon, 14 Aug 2006 07:14:09 +0000 Subject: [PATCH] Check for NULL return value from new_CArgObject(). Fixes klockwork issues #183, #184, #185. --- Modules/_ctypes/_ctypes.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Modules/_ctypes/_ctypes.c b/Modules/_ctypes/_ctypes.c index cf0b20dd6f9..5f3d2ef1264 100644 --- a/Modules/_ctypes/_ctypes.c +++ b/Modules/_ctypes/_ctypes.c @@ -1067,6 +1067,8 @@ c_wchar_p_from_param(PyObject *type, PyObject *value) struct fielddesc *fd = getentry("Z"); parg = new_CArgObject(); + if (parg == NULL) + return NULL; parg->pffi_type = &ffi_type_pointer; parg->tag = 'Z'; parg->obj = fd->setfunc(&parg->value, value, 0); @@ -1119,6 +1121,8 @@ c_char_p_from_param(PyObject *type, PyObject *value) struct fielddesc *fd = getentry("z"); parg = new_CArgObject(); + if (parg == NULL) + return NULL; parg->pffi_type = &ffi_type_pointer; parg->tag = 'z'; parg->obj = fd->setfunc(&parg->value, value, 0); @@ -1176,6 +1180,8 @@ c_void_p_from_param(PyObject *type, PyObject *value) struct fielddesc *fd = getentry("P"); parg = new_CArgObject(); + if (parg == NULL) + return NULL; parg->pffi_type = &ffi_type_pointer; parg->tag = 'P'; parg->obj = fd->setfunc(&parg->value, value, 0);