]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
ldb/pyldb: Check errors from PyLdbMessage_FromMessage
authorAndrew Bartlett <abartlet@samba.org>
Wed, 22 Nov 2023 02:01:47 +0000 (15:01 +1300)
committerAndrew Bartlett <abartlet@samba.org>
Sun, 3 Mar 2024 22:33:34 +0000 (22:33 +0000)
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
lib/ldb/pyldb.c

index 20b3c26f958e29e59615b59f086c90e5a3cae186..982828549d578d0a1c462a48401829c0a4c71df8 100644 (file)
@@ -381,7 +381,13 @@ static PyObject *PyLdbResult_FromResult(struct ldb_result *result)
        }
 
        for (i = 0; i < result->count; i++) {
-               PyList_SetItem(list, i, PyLdbMessage_FromMessage(result->msgs[i]));
+               PyObject *pymessage = PyLdbMessage_FromMessage(result->msgs[i]);
+               if (pymessage == NULL) {
+                       Py_DECREF(ret);
+                       Py_DECREF(list);
+                       return NULL;
+               }
+               PyList_SetItem(list, i, pymessage);
        }
 
        ret->mem_ctx = talloc_new(NULL);