Check for NULL return value of GenericCData_new().
Fixes klockwork issues #188, #189.
diff --git a/Modules/_ctypes/_ctypes.c b/Modules/_ctypes/_ctypes.c
index 5f3d2ef..d8726ec 100644
--- a/Modules/_ctypes/_ctypes.c
+++ b/Modules/_ctypes/_ctypes.c
@@ -2752,6 +2752,8 @@
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 @@
return NULL;
self = (CFuncPtrObject *)GenericCData_new(type, args, kwds);
+ if (self == NULL)
+ return NULL;
Py_INCREF(callable);
self->callable = callable;