summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Heller <theller@ctypes.org>2006-08-14 07:50:14 +0000
committerThomas Heller <theller@ctypes.org>2006-08-14 07:50:14 +0000
commitdca703fbda6d96e97e3872796c1748ee1b6a08e6 (patch)
treef645632ce69e3b25206d1bad2ce49fe5e00b7218
parentefa27273349ad25400682e232e6dc793198320da (diff)
downloadcpython-git-dca703fbda6d96e97e3872796c1748ee1b6a08e6.tar.gz
Check for NULL return value of GenericCData_new().
Fixes klockwork issues #188, #189.
-rw-r--r--Modules/_ctypes/_ctypes.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/Modules/_ctypes/_ctypes.c b/Modules/_ctypes/_ctypes.c
index 5f3d2ef126..d8726ec9f9 100644
--- a/Modules/_ctypes/_ctypes.c
+++ b/Modules/_ctypes/_ctypes.c
@@ -2752,6 +2752,8 @@ CFuncPtr_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
if (ptr == NULL)
return NULL;
ob = (CDataObject *)GenericCData_new(type, args, kwds);
+ if (ob == NULL)
+ return NULL;
*(void **)ob->b_ptr = ptr;
return (PyObject *)ob;
}
@@ -2799,6 +2801,8 @@ CFuncPtr_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
return NULL;
self = (CFuncPtrObject *)GenericCData_new(type, args, kwds);
+ if (self == NULL)
+ return NULL;
Py_INCREF(callable);
self->callable = callable;