summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian.droege@collabora.co.uk>2012-12-30 11:32:02 +0100
committerSebastian Dröge <sebastian.droege@collabora.co.uk>2013-01-09 13:00:55 +0100
commit412fd327e0f683ce42af3e6f0c12e6f565e68e46 (patch)
tree4e7b55c8f859af706ec4b7896e58f73fead55f1c
parentb6c8c3561648e7546dec0f8b4665024377192226 (diff)
eglglessink: Return the last_flow immediately if it wasn't GST_FLOW_OK
-rw-r--r--ext/eglgles/gsteglglessink.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/ext/eglgles/gsteglglessink.c b/ext/eglgles/gsteglglessink.c
index 960e28812..55e0cafb5 100644
--- a/ext/eglgles/gsteglglessink.c
+++ b/ext/eglgles/gsteglglessink.c
@@ -1678,7 +1678,12 @@ queue_item_destroy (GstDataQueueItem * item)
static GstFlowReturn
gst_eglglessink_queue_buffer (GstEglGlesSink * eglglessink, GstBuffer * buf)
{
- 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 = GST_MINI_OBJECT_CAST (buf);
item->size = (buf ? GST_BUFFER_SIZE (buf) : 0);