177 static GtkWidget *
178 nautilus_python_object_get_widget (NautilusLocationWidgetProvider *provider,
179 const char *uri,
180 GtkWidget *window)
181 {
182 NautilusPythonObject *object = (NautilusPythonObject*)provider;
183 GtkWidget *ret = NULL;
184 PyObject *py_ret = NULL;
185 PyGObject *py_ret_gobj;
186 PyObject *py_uri = NULL;
187 PyGILState_STATE state = pyg_gil_state_ensure();
when treating unknown struct _PyGObject_Functions * from /usr/include/pygtk-2.0/pygobject.h:209 as non-NULL
calling unknown int (*) (void) from nautilus-python-object.c:187
188
189 debug_enter();
when considering range: -0x80000000 <= value <= -1
taking True path
190
191 CHECK_OBJECT(object);
when treating unknown struct NautilusLocationWidgetProvider * from nautilus-python-object.c:178 as non-NULL
when treating unknown struct PyObject * from nautilus-python-object.c:191 as non-NULL
taking False path
192 CHECK_METHOD_NAME(object->instance);
when treating unknown struct PyObject * from nautilus-python-object.c:192 as non-NULL
when PyObject_HasAttrString() returns 1 (true)
taking False path
193
194 py_uri = PyString_FromString(uri);
when treating unknown const char * from nautilus-python-object.c:179 as non-NULL
when PyString_FromString() fails
195
196 py_ret = PyObject_CallMethod(object->instance, METHOD_PREFIX METHOD_NAME,
when call succeeds
when PyObject_CallMethod() fails
new ref from call through function pointer allocated at: py_ret = PyObject_CallMethod(object->instance, METHOD_PREFIX METHOD_NAME,
ob_refcnt is now refs: 1 + N where N >= 0
197 "(NN)", py_uri,
198 pygobject_new((GObject *)window));
199 HANDLE_RETVAL(py_ret);
taking True path
calling PyErr_Print()
200
201 py_ret_gobj = (PyGObject *)py_ret;
202 if (!pygobject_check(py_ret_gobj, &PyGtkWidget_Type))
203 {
204 PyErr_SetString(PyExc_TypeError,
205 METHOD_NAME "should return a gtk.Widget");
206 goto beach;
207 }
208 ret = (GtkWidget *)g_object_ref(py_ret_gobj->obj);
209
210 beach:
211 Py_XDECREF(py_ret);
taking True path
212 pyg_gil_state_release(state);
calling unknown void (*) (int) from nautilus-python-object.c:212
213 return ret;
returning
ob_refcnt of new ref from call through function pointer is 1 too high
was expecting final ob_refcnt to be N + 0 (for some unknown N)
but final ob_refcnt is N + 1
214 }