diff options
author | Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> | 2009-12-18 13:30:29 +0100 |
---|---|---|
committer | Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> | 2009-12-18 13:32:07 +0100 |
commit | a61183fe291ba46a5e5ea7c37dee10b3a7fdf87e (patch) | |
tree | 656d52d2b718ec4edf3775d199f832d5320cd58f | |
parent | d51d8ca35ce82b5975f3eb19074f987058b4f838 (diff) |
baseparse: check for remaining data when draining in push mode
-rw-r--r-- | gst/audioparsers/gstbaseparse.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gst/audioparsers/gstbaseparse.c b/gst/audioparsers/gstbaseparse.c index bfbb73dab..dfe53d548 100644 --- a/gst/audioparsers/gstbaseparse.c +++ b/gst/audioparsers/gstbaseparse.c @@ -1103,6 +1103,11 @@ gst_base_parse_chain (GstPad * pad, GstBuffer * buffer) if (G_UNLIKELY (parse->priv->drain)) { min_size = gst_adapter_available (parse->adapter); + GST_DEBUG_OBJECT (parse, "draining, data left: %d", min_size); + if (G_UNLIKELY (!min_size)) { + gst_buffer_unref (tmpbuf); + goto done; + } } /* Collect at least min_frame_size bytes */ |