Fix padtemplate being unreffed twice on glib2
authorWim Taymans <wim.taymans@gmail.com>
Sun, 27 Jan 2002 19:21:05 +0000 (19:21 +0000)
committerWim Taymans <wim.taymans@gmail.com>
Sun, 27 Jan 2002 19:21:05 +0000 (19:21 +0000)
Original commit message from CVS:
Fix padtemplate being unreffed twice on glib2

gst/gstpad.c

index a1ed8c8..f39163e 100644 (file)
@@ -1429,13 +1429,14 @@ gst_real_pad_dispose (GObject *object)
   
   GST_DEBUG (GST_CAT_REFCOUNTING, "dispose %s:%s\n", GST_DEBUG_PAD_NAME(pad));
 
-  if (GST_PAD (pad)->padtemplate){
-    GST_DEBUG (GST_CAT_REFCOUNTING, "unreffing padtemplate'%s'\n",GST_OBJECT_NAME(GST_OBJECT (GST_PAD (pad)->padtemplate)));
-    gst_object_unref (GST_OBJECT (GST_PAD (pad)->padtemplate));
+  if (GST_PAD_PADTEMPLATE (pad)){
+    GST_DEBUG (GST_CAT_REFCOUNTING, "unreffing padtemplate'%s'\n", GST_OBJECT_NAME (GST_PAD_PADTEMPLATE (pad)));
+    gst_object_unref (GST_OBJECT (GST_PAD_PADTEMPLATE (pad)));
+    GST_PAD_PADTEMPLATE (pad) = NULL;
   }
   
   if (GST_PAD_PEER (pad)){
-    GST_DEBUG (GST_CAT_REFCOUNTING, "disconnecting pad '%s'\n",GST_OBJECT_NAME(GST_OBJECT (GST_PAD (GST_PAD_PEER (pad)))));
+    GST_DEBUG (GST_CAT_REFCOUNTING, "disconnecting pad '%s'\n", GST_OBJECT_NAME (GST_OBJECT (GST_PAD (GST_PAD_PEER (pad)))));
     gst_pad_disconnect (pad, GST_PAD (GST_PAD_PEER (pad)));
   }