eglglessink: Return the last_flow immediately if it wasn't GST_FLOW_OK
authorSebastian Dröge <sebastian.droege@collabora.co.uk>
Sun, 30 Dec 2012 10:32:02 +0000 (11:32 +0100)
committerSebastian Dröge <sebastian.droege@collabora.co.uk>
Thu, 21 Mar 2013 09:01:29 +0000 (10:01 +0100)
ext/eglgles/gsteglglessink.c

index 476f549a9b20f881c56cc53e6f3f38a0d82732d0..7156e8dca075974f9ab8cb71d667a07c9248abee 100644 (file)
@@ -1666,7 +1666,12 @@ queue_item_destroy (GstDataQueueItem * item)
 static GstFlowReturn
 gst_eglglessink_queue_object (GstEglGlesSink * eglglessink, GstMiniObject * obj)
 {
-  GstDataQueueItem *item = g_slice_new0 (GstDataQueueItem);
+  GstDataQueueItem *item;
+
+  if (eglglessink->last_flow != GST_FLOW_OK)
+    return eglglessink->last_flow;
+  
+  item = g_slice_new0 (GstDataQueueItem);
 
   item->object = obj ? gst_mini_object_ref (obj) : NULL;
   item->size = 0;