ximage: more fixes
authorWim Taymans <wim.taymans@collabora.co.uk>
Wed, 6 Apr 2011 15:54:28 +0000 (17:54 +0200)
committerWim Taymans <wim.taymans@collabora.co.uk>
Wed, 6 Apr 2011 15:54:28 +0000 (17:54 +0200)
sys/ximage/ximagepool.c
sys/xvimage/xvimagepool.c
sys/xvimage/xvimagesink.c
sys/xvimage/xvimagesink.h

index 0041348a7a2d1ccca92c70439c6536a6306e8bd6..7c86ca774f297006ec63a3b5e9b0f17ce6c1bb91 100644 (file)
@@ -291,6 +291,8 @@ gst_meta_ximage_free (GstMetaXImage * meta, GstBuffer * buffer)
 
 beach:
   GST_OBJECT_UNLOCK (ximagesink);
+
+  gst_object_unref (meta->sink);
 }
 
 GstBuffer *
index 0c37761b2c4b5cf29b8490e51878676e2850051f..b265db448d8600569d78f682a97b6c02657fbbd3 100644 (file)
@@ -325,6 +325,8 @@ gst_meta_xvimage_free (GstMetaXvImage * meta, GstBuffer * buffer)
 
 beach:
   GST_OBJECT_UNLOCK (xvimagesink);
+
+  gst_object_unref (meta->sink);
 }
 
 GstBuffer *
index 3678d5174e7e42752735ea9047eaa2ae084b1b53..316057706356c855af46d34f3c1778ac78fc722b 100644 (file)
@@ -314,8 +314,7 @@ gst_xvimagesink_xvimage_put (GstXvImageSink * xvimagesink, GstBuffer * xvimage)
   if (xvimagesink->xcontext->use_xshm) {
     GST_LOG_OBJECT (xvimagesink,
         "XvShmPutImage with image %dx%d and window %dx%d, from xvimage %"
-        GST_PTR_FORMAT,
-        meta->width, meta->height,
+        GST_PTR_FORMAT, meta->width, meta->height,
         xvimagesink->render_rect.w, xvimagesink->render_rect.h, xvimage);
 
     XvShmPutImage (xvimagesink->xcontext->disp,
@@ -2331,6 +2330,7 @@ gst_xvimagesink_expose (GstXOverlay * overlay)
 {
   GstXvImageSink *xvimagesink = GST_XVIMAGESINK (overlay);
 
+  GST_DEBUG ("doing expose");
   gst_xvimagesink_xwindow_update_geometry (xvimagesink);
   gst_xvimagesink_xvimage_put (xvimagesink, NULL);
 }
index 5eb4e703030702f47e49132ac365d28fb7752481..4531cf313b894d07199882e7654d7306c7ac35f2 100644 (file)
@@ -208,7 +208,6 @@ struct _GstXvImageSink
 
   GstXContext *xcontext;
   GstXWindow *xwindow;
-  GstBuffer *xvimage;
   GstBuffer *cur_image;
 
   GThread *event_thread;