diff options
author | Benjamin Berg <bberg@redhat.com> | 2021-12-29 05:05:32 +0100 |
---|---|---|
committer | Christoph Reiter <reiter.christoph@gmail.com> | 2022-04-24 11:32:50 +0200 |
commit | 13c6e76d0ebf40d1577658c214f42615606a89d3 (patch) | |
tree | d0e6bf951db6eacd097b61377b9b39e2f7311f73 | |
parent | ff94738f090461ee44c71e635facbbe9ab4b876c (diff) | |
download | pygobject-13c6e76d0ebf40d1577658c214f42615606a89d3.tar.gz |
hashtable: Fix refcount of key/value in error case when marshalling
PyList_GET_ITEM only returns a borrowed reference. In the unlikely event
of an error converting the key or value, the reference would be
unintentionally decremented. This could cause random failures later on
(and was indeed causing the PyPy test to fail randomly later on).
-rw-r--r-- | gi/pygi-hashtable.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/gi/pygi-hashtable.c b/gi/pygi-hashtable.c index 285eca19..26d5f61c 100644 --- a/gi/pygi-hashtable.c +++ b/gi/pygi-hashtable.c @@ -139,8 +139,6 @@ _pygi_marshal_from_py_ghash (PyGIInvokeState *state, continue; err: /* FIXME: cleanup hash keys and values */ - Py_XDECREF (py_key); - Py_XDECREF (py_value); Py_DECREF (py_keys); Py_DECREF (py_values); g_hash_table_unref (hash_); |