s3:pylibsmb: avoid small leaks in cli_notify_get_changes
authorDouglas Bagnall <douglas.bagnall@catalyst.net.nz>
Thu, 27 May 2021 03:32:45 +0000 (15:32 +1200)
committerJeremy Allison <jra@samba.org>
Thu, 10 Jun 2021 00:29:32 +0000 (00:29 +0000)
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Jeremy Allison <jra@samba.org>
source3/libsmb/pylibsmb.c

index 16076485153da37840369f3821afb3d54ce2fdac..38dc5ecb8dfd76aff2bafff07146e9cda049e994 100644 (file)
@@ -1330,12 +1330,15 @@ static PyObject *py_cli_notify_get_changes(struct py_cli_notify_state *self,
                                       "name", changes[i].name,
                                       "action", changes[i].action);
                if (change == NULL) {
+                       Py_XDECREF(result);
                        TALLOC_FREE(req);
                        return NULL;
                }
 
                ret = PyList_Append(result, change);
+               Py_DECREF(change);
                if (ret == -1) {
+                       Py_XDECREF(result);
                        TALLOC_FREE(req);
                        return NULL;
                }