File: | gstpad.override |
Function: | _wrap_gst_pad_get_range |
Error: | ob_refcnt of _Py_NoneStruct is 1 too low |
1235 static PyObject *
1236 _wrap_gst_pad_get_range (PyGObject *self, PyObject * args, PyObject *kwargs)
1237 {
1238 static char *kwlist[] = {"offset", "size", NULL};
1239 guint64 offset;
1240 gint size;
1241 PyObject *ret;
1242 GstBuffer *buf;
1243 GstFlowReturn res;
1244
1245 if (!PyArg_ParseTupleAndKeywords(args, kwargs,
when PyArg_ParseTupleAndKeywords() succeeds
taking False path
1246 "Ki:GstPad.get_range",
1247 kwlist, &offset, &size))
1248 return NULL;
1249 res = gst_pad_get_range (GST_PAD(pygobject_get(self)),
1250 offset, size, &buf);
1251 ret = PyList_New(2);
when PyList_New() succeeds
1252 PyList_SetItem(ret, 0, pyg_enum_from_gtype(GST_TYPE_FLOW_RETURN, res));
when treating unknown struct _PyGObject_Functions * from /usr/include/pygtk-2.0/pygobject.h:207 as non-NULL
when call succeeds
PyList_SetItem() succeeds
1253 if (res != GST_FLOW_OK) {
when taking True path
ob_refcnt is now refs: 0 + N where N >= 1
1254 PyList_SetItem(ret, 1, Py_None);
PyList_SetItem() succeeds
ob_refcnt is now refs: -1 + N where N >= 2
1255 } else {
1256 PyList_SetItem(ret, 1, pygstminiobject_new(GST_MINI_OBJECT(buf)));
1257 /* Bring down the reference count, since we are meant to be the only
1258 * one holding a reference to the newly created buffer. */
1259 gst_buffer_unref (buf);
1260 }
1261 return ret;
1262 }
ob_refcnt of _Py_NoneStruct is 1 too low
was expecting final ob_refcnt to be N + 0 (for some unknown N)
but final ob_refcnt is N + -1
found 1 similar trace(s) to this
File: | gstpad.override |
Function: | _wrap_gst_pad_get_range |
Error: | calling PyList_SetItem with NULL as argument 1 (ret) at gstpad.override:1252 |
1235 static PyObject *
1236 _wrap_gst_pad_get_range (PyGObject *self, PyObject * args, PyObject *kwargs)
1237 {
1238 static char *kwlist[] = {"offset", "size", NULL};
1239 guint64 offset;
1240 gint size;
1241 PyObject *ret;
1242 GstBuffer *buf;
1243 GstFlowReturn res;
1244
1245 if (!PyArg_ParseTupleAndKeywords(args, kwargs,
when PyArg_ParseTupleAndKeywords() succeeds
taking False path
1246 "Ki:GstPad.get_range",
1247 kwlist, &offset, &size))
1248 return NULL;
1249 res = gst_pad_get_range (GST_PAD(pygobject_get(self)),
1250 offset, size, &buf);
1251 ret = PyList_New(2);
when PyList_New() fails
1252 PyList_SetItem(ret, 0, pyg_enum_from_gtype(GST_TYPE_FLOW_RETURN, res));
when treating unknown struct _PyGObject_Functions * from /usr/include/pygtk-2.0/pygobject.h:207 as non-NULL
when call succeeds
calling PyList_SetItem with NULL as argument 1 (ret) at gstpad.override:1252
PyList_SetItem() invokes Py_TYPE() on the pointer via the PyList_Check() macro, thus accessing (NULL)->ob_type
found 1 similar trace(s) to this
1253 if (res != GST_FLOW_OK) {
1254 PyList_SetItem(ret, 1, Py_None);
1255 } else {
1256 PyList_SetItem(ret, 1, pygstminiobject_new(GST_MINI_OBJECT(buf)));
1257 /* Bring down the reference count, since we are meant to be the only
1258 * one holding a reference to the newly created buffer. */
1259 gst_buffer_unref (buf);
1260 }
1261 return ret;
1262 }