mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-02-17 03:35:21 +00:00
gst/gstqueue.c: Fix double unlock (#169073).
Original commit message from CVS: * gst/gstqueue.c: (gst_queue_chain): Fix double unlock (#169073).
This commit is contained in:
parent
d859108ac1
commit
02cb914495
3 changed files with 7 additions and 2 deletions
|
@ -1,3 +1,8 @@
|
||||||
|
2005-03-03 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
|
||||||
|
|
||||||
|
* gst/gstqueue.c: (gst_queue_chain):
|
||||||
|
Fix double unlock (#169073).
|
||||||
|
|
||||||
2005-03-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
|
2005-03-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
|
||||||
|
|
||||||
* gst/gstqueue.c: (gst_queue_locked_flush), (gst_queue_chain),
|
* gst/gstqueue.c: (gst_queue_locked_flush), (gst_queue_chain),
|
||||||
|
|
|
@ -661,11 +661,11 @@ restart:
|
||||||
GstScheduler *sched;
|
GstScheduler *sched;
|
||||||
|
|
||||||
GST_CAT_DEBUG_OBJECT (queue_dataflow, queue, "interrupted");
|
GST_CAT_DEBUG_OBJECT (queue_dataflow, queue, "interrupted");
|
||||||
GST_QUEUE_MUTEX_UNLOCK;
|
|
||||||
sched = gst_pad_get_scheduler (queue->sinkpad);
|
sched = gst_pad_get_scheduler (queue->sinkpad);
|
||||||
if (!sched || gst_scheduler_interrupt (sched, GST_ELEMENT (queue))) {
|
if (!sched || gst_scheduler_interrupt (sched, GST_ELEMENT (queue))) {
|
||||||
goto ignore_interrupt;
|
goto ignore_interrupt;
|
||||||
}
|
}
|
||||||
|
GST_QUEUE_MUTEX_UNLOCK;
|
||||||
/* if we got here because we were unlocked after a
|
/* if we got here because we were unlocked after a
|
||||||
* flush, we don't need to add the buffer to the
|
* flush, we don't need to add the buffer to the
|
||||||
* queue again */
|
* queue again */
|
||||||
|
|
|
@ -661,11 +661,11 @@ restart:
|
||||||
GstScheduler *sched;
|
GstScheduler *sched;
|
||||||
|
|
||||||
GST_CAT_DEBUG_OBJECT (queue_dataflow, queue, "interrupted");
|
GST_CAT_DEBUG_OBJECT (queue_dataflow, queue, "interrupted");
|
||||||
GST_QUEUE_MUTEX_UNLOCK;
|
|
||||||
sched = gst_pad_get_scheduler (queue->sinkpad);
|
sched = gst_pad_get_scheduler (queue->sinkpad);
|
||||||
if (!sched || gst_scheduler_interrupt (sched, GST_ELEMENT (queue))) {
|
if (!sched || gst_scheduler_interrupt (sched, GST_ELEMENT (queue))) {
|
||||||
goto ignore_interrupt;
|
goto ignore_interrupt;
|
||||||
}
|
}
|
||||||
|
GST_QUEUE_MUTEX_UNLOCK;
|
||||||
/* if we got here because we were unlocked after a
|
/* if we got here because we were unlocked after a
|
||||||
* flush, we don't need to add the buffer to the
|
* flush, we don't need to add the buffer to the
|
||||||
* queue again */
|
* queue again */
|
||||||
|
|
Loading…
Reference in a new issue