[Python-checkins] r42890 - python/trunk/Modules/_bsddb.c

thomas.wouters python-checkins at python.org
Tue Mar 7 15:13:18 CET 2006


Author: thomas.wouters
Date: Tue Mar  7 15:13:17 2006
New Revision: 42890

Modified:
   python/trunk/Modules/_bsddb.c
Log:

Coverity found bug: test result of PyTuple_New() against NULL before use.
Will backport.



Modified: python/trunk/Modules/_bsddb.c
==============================================================================
--- python/trunk/Modules/_bsddb.c	(original)
+++ python/trunk/Modules/_bsddb.c	Tue Mar  7 15:13:17 2006
@@ -1084,12 +1084,12 @@
         }
         data = PyString_FromStringAndSize(priData->data, priData->size);
         args = PyTuple_New(2);
-        PyTuple_SET_ITEM(args, 0, key);  /* steals reference */
-        PyTuple_SET_ITEM(args, 1, data); /* steals reference */
-
-        result = PyEval_CallObject(callback, args);
-
-        if (result == NULL) {
+        if (args != NULL) {
+                PyTuple_SET_ITEM(args, 0, key);  /* steals reference */
+                PyTuple_SET_ITEM(args, 1, data); /* steals reference */
+                result = PyEval_CallObject(callback, args);
+        }
+        if (args == NULL || result == NULL) {
             PyErr_Print();
         }
         else if (result == Py_None) {


More information about the Python-checkins mailing list