aboutsummaryrefslogtreecommitdiffstats
path: root/lang/python
diff options
context:
space:
mode:
Diffstat (limited to 'lang/python')
-rw-r--r--lang/python/gpgme.i14
1 files changed, 12 insertions, 2 deletions
diff --git a/lang/python/gpgme.i b/lang/python/gpgme.i
index bc957e57..458ae7f1 100644
--- a/lang/python/gpgme.i
+++ b/lang/python/gpgme.i
@@ -452,14 +452,24 @@
size++;
}
$result = PyList_New(size);
+ if ($result == NULL)
+ return NULL; /* raise */
for (i=0,curr=$1; i<size; i++,curr=curr->next) {
PyObject *fragile, *o;
fragile = SWIG_NewPointerObj(SWIG_as_voidptr(curr), $1_descriptor,
%newpointer_flags);
+ if (fragile == NULL)
+ {
+ Py_DECREF($result);
+ return NULL; /* raise */
+ }
o = _pyme_wrap_result(fragile, "EngineInfo");
- if (o == NULL)
- return NULL; /* raise */
Py_DECREF(fragile);
+ if (o == NULL)
+ {
+ Py_DECREF($result);
+ return NULL; /* raise */
+ }
PyList_SetItem($result, i, o);
}
}