diff options
author | Olivier Crete <olivier.crete@collabora.co.uk> | 2008-04-21 03:26:14 +0000 |
---|---|---|
committer | Edward Hervey <bilboed@bilboed.com> | 2009-02-17 19:29:04 +0100 |
commit | 341a88cd0462afd5c21a49fcf5a1bf4ebe64bb16 (patch) | |
tree | 2f1dcb34bf212ba090be199b7b34bb6b948acaf7 /gst | |
parent | 244bf6f250af2cbba0c97914913e000223a73f29 (diff) | |
download | gst-plugins-bad-341a88cd0462afd5c21a49fcf5a1bf4ebe64bb16.tar.gz gst-plugins-bad-341a88cd0462afd5c21a49fcf5a1bf4ebe64bb16.tar.bz2 gst-plugins-bad-341a88cd0462afd5c21a49fcf5a1bf4ebe64bb16.zip |
[MOVED FROM GST-P-FARSIGHT] Unlock liveadder empty buffer gcond on flush
20080421032614-3e2dc-4ed29e1583ff684338ba5d7611f60b1a7eaff563.gz
Diffstat (limited to 'gst')
-rw-r--r-- | gst/liveadder/liveadder.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/gst/liveadder/liveadder.c b/gst/liveadder/liveadder.c index 8b6e6f6c..d7ec7ed9 100644 --- a/gst/liveadder/liveadder.c +++ b/gst/liveadder/liveadder.c @@ -452,6 +452,8 @@ gst_live_adder_flush_start (GstLiveAdder * adder) * locking streaming thread. */ if (adder->clock_id) gst_clock_id_unschedule (adder->clock_id); + + g_cond_broadcast (adder->not_empty_cond); GST_OBJECT_UNLOCK (adder); } @@ -1029,12 +1031,12 @@ gst_live_adder_loop (gpointer data) for (;;) { + if (adder->srcresult != GST_FLOW_OK) + goto flushing; if (!g_queue_is_empty (adder->buffers)) break; if (check_eos_locked (adder)) goto eos; - if (adder->srcresult != GST_FLOW_OK) - goto flushing; g_cond_wait (adder->not_empty_cond, GST_OBJECT_GET_LOCK(adder)); } |