diff --git a/ChangeLog b/ChangeLog index 03e438ca74..efd4e1e8d8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2005-07-13 Edward Hervey + + * gst/gstbus.override: (bus_sync_handler),(bus_handler): + properly unref the message python wrapper... + 2005-07-13 Andy Wingo * examples/pipeline-tester (Window.on_message): Handle errors. diff --git a/gst/gstbus.override b/gst/gstbus.override index e0178ca3a7..dcd2a41832 100644 --- a/gst/gstbus.override +++ b/gst/gstbus.override @@ -63,7 +63,7 @@ bus_sync_handler (GstBus *bus, GstMessage *message, gpointer user_data) res = GST_BUS_PASS; Py_DECREF (ret); } - + Py_DECREF(py_msg); Py_DECREF(args); pyg_gil_state_release(state); @@ -77,7 +77,7 @@ bus_handler (GstBus *bus, GstMessage *message, gpointer user_data) PyGILState_STATE state; gboolean res; PyObject *py_userdata; - PyObject *py_msg; + PyObject *py_msg; PyObject *callback, *args; PyObject *ret; gint i,len; @@ -87,7 +87,7 @@ bus_handler (GstBus *bus, GstMessage *message, gpointer user_data) state = pyg_gil_state_ensure(); py_userdata = (PyObject *) user_data; - py_msg = pygstminiobject_new(GST_MINI_OBJECT(message)); + py_msg = pygstminiobject_new(GST_MINI_OBJECT(message)); callback = PyTuple_GetItem(py_userdata, 0); args = Py_BuildValue("(NN)", pygobject_new(G_OBJECT(bus)), @@ -113,6 +113,7 @@ bus_handler (GstBus *bus, GstMessage *message, gpointer user_data) res = PyObject_IsTrue(ret); Py_DECREF(ret); } + Py_DECREF(py_msg); Py_DECREF(args); pyg_gil_state_release(state);