diff options
author | 이문형 <iwings@gmail.com> | 2008-12-01 19:36:35 +0000 |
---|---|---|
committer | Tim-Philipp Müller <tim@centricular.net> | 2008-12-01 19:36:35 +0000 |
commit | 10097dffbd1f9a4874c93cbce4868685463b1548 (patch) | |
tree | c9f88a9c2f79faddeec65f48a723f4218e4f6c4a | |
parent | 86638af6cb3d38f443c4ad0c8dec87c66fd1243d (diff) | |
download | gst-plugins-bad-10097dffbd1f9a4874c93cbce4868685463b1548.tar.gz gst-plugins-bad-10097dffbd1f9a4874c93cbce4868685463b1548.tar.bz2 gst-plugins-bad-10097dffbd1f9a4874c93cbce4868685463b1548.zip |
gst-libs/gst/app/gstappsrc.c: Don't forget to release the lock again if we bail out because some pad is flushing or w...
Original commit message from CVS:
Patch by: 이문형 <iwings at gmail dot com>
* gst-libs/gst/app/gstappsrc.c: (gst_app_src_push_buffer):
Don't forget to release the lock again if we bail out because some
pad is flushing or we've reached EOS, otherwise things will lock up
next time _push_buffer() is called (#562802).
-rw-r--r-- | ChangeLog | 9 | ||||
m--------- | common | 0 | ||||
-rw-r--r-- | gst-libs/gst/app/gstappsrc.c | 2 |
3 files changed, 11 insertions, 0 deletions
@@ -1,3 +1,12 @@ +2008-12-01 Tim-Philipp Müller <tim.muller at collabora co uk> + + Patch by: 이문형 <iwings at gmail dot com> + + * gst-libs/gst/app/gstappsrc.c: (gst_app_src_push_buffer): + Don't forget to release the lock again if we bail out because some + pad is flushing or we've reached EOS, otherwise things will lock up + next time _push_buffer() is called (#562802). + 2008-12-01 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> * gst/qtmux/atoms.c: (build_jp2h_extension): diff --git a/common b/common -Subproject 24963a683c185e1405b6f0aad37d95064cced93 +Subproject 9a486164b87586f7b936a55b1ee56a14cd4e2c7 diff --git a/gst-libs/gst/app/gstappsrc.c b/gst-libs/gst/app/gstappsrc.c index a10f9a32..3bec52f2 100644 --- a/gst-libs/gst/app/gstappsrc.c +++ b/gst-libs/gst/app/gstappsrc.c @@ -991,12 +991,14 @@ flushing: { GST_DEBUG_OBJECT (appsrc, "refuse buffer %p, we are flushing", buffer); gst_buffer_unref (buffer); + g_mutex_unlock (appsrc->mutex); return GST_FLOW_WRONG_STATE; } eos: { GST_DEBUG_OBJECT (appsrc, "refuse buffer %p, we are EOS", buffer); gst_buffer_unref (buffer); + g_mutex_unlock (appsrc->mutex); return GST_FLOW_UNEXPECTED; } } |