Something went wrong. Try again.
Nix Packages collection & NixOS github.com/NixOS/nixpkgs
Something went wrong. Try again.
939 B · 28 lines
at master
1234567891011121314151617181920212223242526272829diff --git a/src/ioncmodule.c b/src/ioncmodule.cindex b53258d..747d6f9 100644--- a/src/ioncmodule.c+++ b/src/ioncmodule.c@@ -315,8 +315,13 @@ static iERR ionc_write_annotations(hWRITER writer, PyObject* obj) { SUCCEED(); } - annotations = PySequence_Fast(annotations, "expected sequence");- Py_ssize_t len = PySequence_Size(annotations);+ PyObject* annotations_seq = PySequence_Fast(annotations, "expected sequence");+ Py_DECREF(annotations);+ annotations = annotations_seq;+ if (annotations == NULL) {+ _FAILWITH_PENDING_PYERR();+ }+ Py_ssize_t len = PySequence_Fast_GET_SIZE(annotations); Py_ssize_t i; for (i = 0; i < len; i++) {@@ -333,7 +338,6 @@ static iERR ionc_write_annotations(hWRITER writer, PyObject* obj) { Py_DECREF(pyAnnotation); if (err) break; }- Py_XDECREF(annotations); fail: Py_XDECREF(annotations); cRETURN;