[Bug 692691] queue: dangling pointer when doing allocation query on a flushing queue
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Wed Jan 30 04:14:55 PST 2013
https://bugzilla.gnome.org/show_bug.cgi?id=692691
GStreamer | gstreamer (core) | 1.x
Tim-Philipp Müller <t.i.m> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
Target Milestone|HEAD |1.0.6
Summary|Dangling pointer when doing |queue: dangling pointer
|allocation query on a |when doing allocation query
|flushing queue |on a flushing queue
--- Comment #15 from Tim-Philipp Müller <t.i.m at zen.co.uk> 2013-01-30 12:14:50 UTC ---
master:
commit 745821d5f1af00a693d4e5076f20cddd1b1da6a6
Author: Alexander Schrab <alexas at axis.com>
Date: Tue Jan 29 12:40:52 2013 +0100
tests: unit test to trigger the queue/flushing race condition bug for
allocation queries
https://bugzilla.gnome.org/show_bug.cgi?id=692691
commit 09bb0c2cdb1e0abd7b674bea3e30ac2adb25c663
Author: Alexander Schrab <alexas at axis.com>
Date: Mon Jan 28 11:05:28 2013 +0100
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
commit ae8940e6f7057b4528d7b73d69672c0a8ff46cf1
Author: Tim-Philipp Müller <tim.muller at collabora.co.uk>
Date: Wed Jan 30 11:55:18 2013 +0000
queuearray: make _find() find the value if no compare function is provided
Allow NULL as compare function for direct value lookup.
https://bugzilla.gnome.org/show_bug.cgi?id=692691
1.0:
commit fd366ce62834ac2065437531665431e775d726b8
Author: Alexander Schrab <alexas at axis.com>
Date: Tue Jan 29 12:40:52 2013 +0100
tests: unit test to trigger the queue/flushing race condition bug for
allocation queries
https://bugzilla.gnome.org/show_bug.cgi?id=692691
commit ca5628ad8c39ad8735430a2091970926cde3bd76
Author: Alexander Schrab <alexas at axis.com>
Date: Mon Jan 28 11:05:28 2013 +0100
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
commit 1b46969f7e7bd0fbd9d08c06174e69f2f82acef1
Author: Tim-Philipp Müller <tim.muller at collabora.co.uk>
Date: Wed Jan 30 11:55:18 2013 +0000
queuearray: make _find() find the value if no compare function is provided
Allow NULL as compare function for direct value lookup.
https://bugzilla.gnome.org/show_bug.cgi?id=692691
Conflicts:
plugins/elements/gstqueuearray.c
--
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the gstreamer-bugs
mailing list