File: | goocanvas.override |
Function: | _wrap_goo_canvas_item_get_child_properties |
Error: | ob_refcnt of '*item' is 1 too high |
924 static PyObject *
925 _wrap_goo_canvas_item_get_child_properties(PyGObject *self, PyObject *args)
926 {
927 GObjectClass *class;
928 GooCanvasItem *parent, *child;
929 PyGObject *pychild;
930 int i, len;
931 gint c_pos;
932 PyObject *tuple;
933
934 if ((len = PyTuple_Size(args)) < 1) {
when PyTuple_Size() returns ob_size
when considering range: 1 <= value <= 0x7fffffff
taking False path
935 PyErr_SetString(PyExc_TypeError, "requires at least one argument");
936 return NULL;
937 }
938
939 pychild = (PyGObject*)PyTuple_GetItem(args, 0);
940
941 if (!pygobject_check(pychild, &PyGooCanvasItem_Type)) {
taking True path
when considering range: -0x80000000 <= value <= -1
taking False path
942 PyErr_SetString(PyExc_TypeError,
943 "first argument should be a GooCanvasItem");
944 return NULL;
945 }
946
947 parent = GOO_CANVAS_ITEM(self->obj);
948 child = GOO_CANVAS_ITEM(pychild->obj);
949
950 c_pos = goo_canvas_item_find_child(parent, child);
951 if (c_pos == -1) {
when considering range: -0x80000000 <= value <= -2
taking False path
952 PyErr_SetString(PyExc_TypeError,
953 "first argument must be a child");
954 return NULL;
955 }
956
957 tuple = PyTuple_New(len-1);
when PyTuple_New() succeeds
958
959 class = G_OBJECT_GET_CLASS(self->obj);
when treating unknown struct GObject * from goocanvas.override:959 as non-NULL
960
961 for (i = 1; i < len; i++) {
when considering range: 2 <= value <= 0x7fffffff
taking True path
when considering value == (int)2 from goocanvas.override:934
taking False path
962 PyObject *py_property = PyTuple_GetItem(args, i);
963 gchar *property_name;
964 GParamSpec *pspec;
965 GValue value = { 0 };
966 PyObject *item;
967
968 if (!PyString_Check(py_property)) {
when considering range: 1 <= value <= 0x8000000
taking False path
969 PyErr_SetString(PyExc_TypeError,
970 "Expected string argument for property.");
971 return NULL;
972 }
973
974 property_name = PyString_AsString(py_property);
when PyString_AsString() succeeds
975
976 pspec = goo_canvas_item_class_find_child_property (class, property_name);
977 if (!pspec) {
when treating unknown struct GParamSpec * from goocanvas.override:976 as non-NULL
taking False path
978 PyErr_Format(PyExc_TypeError,
979 "object of type `%s' does not have child property `%s'",
980 g_type_name(G_OBJECT_TYPE(self->obj)), property_name);
981 return NULL;
982 }
983 if (!(pspec->flags & G_PARAM_READABLE)) {
when considering range: -0x80000000 <= value <= -1
taking False path
984 PyErr_Format(PyExc_TypeError, "property %s is not readable", property_name);
985 return NULL;
986 }
987 g_value_init(&value, G_PARAM_SPEC_VALUE_TYPE(pspec));
when treating unknown struct GTypeInstance * from goocanvas.override:987 as non-NULL
988 GooCanvasItemIface *iface;
989
990 iface = g_type_interface_peek (class, GOO_TYPE_CANVAS_ITEM);
991 iface->get_child_property ((GooCanvasItem*) parent,
when treating unknown void * from goocanvas.override:990 as non-NULL
calling unknown void (*) (struct GooCanvasItem *, struct GooCanvasItem *, guint, struct GValue *, struct GParamSpec *) from goocanvas.override:991
992 (GooCanvasItem*) child,
993 pspec->param_id, &value, pspec);
994
995 item = pyg_value_as_pyobject(&value, TRUE);
when treating unknown struct _PyGObject_Functions * from /usr/include/pygtk-2.0/pygobject.h:207 as non-NULL
when call succeeds
new ref from call through function pointer allocated at: item = pyg_value_as_pyobject(&value, TRUE);
ob_refcnt is now refs: 1 + N where N >= 0
996 PyTuple_SetItem(tuple, i-1, item);
when considering value == (int)0 from goocanvas.override:957
when PyTuple_SetItem() fails (index out of range)
997
998 g_value_unset(&value);
999 }
1000
1001 return tuple;
1002 }
ob_refcnt of '*item' is 1 too high
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: | goocanvas.override |
Function: | _wrap_goo_canvas_item_get_child_properties |
Error: | ob_refcnt of '*tuple' is 1 too high |
924 static PyObject *
925 _wrap_goo_canvas_item_get_child_properties(PyGObject *self, PyObject *args)
926 {
927 GObjectClass *class;
928 GooCanvasItem *parent, *child;
929 PyGObject *pychild;
930 int i, len;
931 gint c_pos;
932 PyObject *tuple;
933
934 if ((len = PyTuple_Size(args)) < 1) {
when PyTuple_Size() returns ob_size
when considering range: 1 <= value <= 0x7fffffff
taking False path
935 PyErr_SetString(PyExc_TypeError, "requires at least one argument");
936 return NULL;
937 }
938
939 pychild = (PyGObject*)PyTuple_GetItem(args, 0);
940
941 if (!pygobject_check(pychild, &PyGooCanvasItem_Type)) {
taking True path
when considering range: -0x80000000 <= value <= -1
taking False path
942 PyErr_SetString(PyExc_TypeError,
943 "first argument should be a GooCanvasItem");
944 return NULL;
945 }
946
947 parent = GOO_CANVAS_ITEM(self->obj);
948 child = GOO_CANVAS_ITEM(pychild->obj);
949
950 c_pos = goo_canvas_item_find_child(parent, child);
951 if (c_pos == -1) {
when considering range: -0x80000000 <= value <= -2
taking False path
952 PyErr_SetString(PyExc_TypeError,
953 "first argument must be a child");
954 return NULL;
955 }
956
957 tuple = PyTuple_New(len-1);
when PyTuple_New() succeeds
PyTupleObject allocated at: tuple = PyTuple_New(len-1);
ob_refcnt is now refs: 1 + N where N >= 0
958
959 class = G_OBJECT_GET_CLASS(self->obj);
when treating unknown struct GObject * from goocanvas.override:959 as non-NULL
960
961 for (i = 1; i < len; i++) {
when considering range: 2 <= value <= 0x7fffffff
taking True path
962 PyObject *py_property = PyTuple_GetItem(args, i);
963 gchar *property_name;
964 GParamSpec *pspec;
965 GValue value = { 0 };
966 PyObject *item;
967
968 if (!PyString_Check(py_property)) {
when considering range: 1 <= value <= 0x8000000
taking False path
969 PyErr_SetString(PyExc_TypeError,
970 "Expected string argument for property.");
971 return NULL;
972 }
973
974 property_name = PyString_AsString(py_property);
when PyString_AsString() succeeds
975
976 pspec = goo_canvas_item_class_find_child_property (class, property_name);
977 if (!pspec) {
when treating unknown struct GParamSpec * from goocanvas.override:976 as non-NULL
taking False path
978 PyErr_Format(PyExc_TypeError,
979 "object of type `%s' does not have child property `%s'",
980 g_type_name(G_OBJECT_TYPE(self->obj)), property_name);
981 return NULL;
982 }
983 if (!(pspec->flags & G_PARAM_READABLE)) {
when considering value == (int)0 from goocanvas.override:983
taking True path
984 PyErr_Format(PyExc_TypeError, "property %s is not readable", property_name);
PyErr_Format()
985 return NULL;
986 }
987 g_value_init(&value, G_PARAM_SPEC_VALUE_TYPE(pspec));
988 GooCanvasItemIface *iface;
989
990 iface = g_type_interface_peek (class, GOO_TYPE_CANVAS_ITEM);
991 iface->get_child_property ((GooCanvasItem*) parent,
992 (GooCanvasItem*) child,
993 pspec->param_id, &value, pspec);
994
995 item = pyg_value_as_pyobject(&value, TRUE);
996 PyTuple_SetItem(tuple, i-1, item);
997
998 g_value_unset(&value);
999 }
1000
1001 return tuple;
1002 }
ob_refcnt of '*tuple' is 1 too high
was expecting final ob_refcnt to be N + 0 (for some unknown N)
but final ob_refcnt is N + 1
found 2 similar trace(s) to this