queue: remove query from queue if queue is flushing
authorAlexander Schrab <alexas@axis.com>
Mon, 28 Jan 2013 10:05:28 +0000 (11:05 +0100)
committerTim-Philipp Müller <tim.muller@collabora.co.uk>
Wed, 30 Jan 2013 12:07:52 +0000 (12:07 +0000)
commit09bb0c2cdb1e0abd7b674bea3e30ac2adb25c663
treee0b2c0af3961c675b4be9cf42ec896ee15def126
parentae8940e6f7057b4528d7b73d69672c0a8ff46cf1
queue: remove query from queue if queue is flushing

When querying a queue that is flushing we end up adding
a query to the queuearray without taking a reference to
that query (because the normal functionality is to block
until that query is done and discarded from the queue).
This later causes problem if the query is unreffed outside
of the queue before we discard the queue. There is a check
to avoid unreffing any lingering query-objects, but since
the query has been deleted that check fails.

This commit depends on other fixes done to gst_queue_array_find()
and gst_queue_array_drop_element().

https://bugzilla.gnome.org/show_bug.cgi?id=692691
plugins/elements/gstqueue.c