[gstreamer-bugs] [Bug 423700] Multiqueue leaks memory when flushing
GStreamer (bugzilla.gnome.org)
bugzilla-daemon at bugzilla.gnome.org
Wed Mar 28 15:38:04 PDT 2007
If you have any questions why you received this email, please see the text at
the end of this email. Replies to this email are NOT read, please see the text
at the end of this email. You can add comments to this bug at:
http://bugzilla.gnome.org/show_bug.cgi?id=423700.
GStreamer | gstreamer (core) | Ver: 0.10.12
Tim-Philipp Müller changed:
What |Removed |Added
----------------------------------------------------------------------------
Attachment #85440|none |reviewed
Flag| |
Status|UNCONFIRMED |NEW
Ever Confirmed|0 |1
------- Comment #2 from Tim-Philipp Müller 2007-03-28 22:35 UTC -------
I can reproduce the bug (see disabled testcase in the unit test I added today),
but something doesn't look quite right here to me (might just be screwy
semantics in GstMultiQueue and GstDataQueue or me being confused though).
For example:
- gst_multi_queue_item_destroy() already unrefs item->object, so why
the second unref in the patch?
- in gst_multi_queue_chain() it creates a new GstMultiQueueItem, which
takes its own ref to the buffer, but it doesn't give away the taken-over
reference to the buffer unconditionally at the end of the chain function,
but only if gst_data_queue_push() fails (and I'm not even going to ask
why gst_data_queue_push() doesn't take ownership of the passed item
unconditionally, just like gst_pad_push*() do, or why it doesn't return
a flow return directly ...)
--
See http://bugzilla.gnome.org/page.cgi?id=email.html for more info about why you received
this email, why you can't respond via email, how to stop receiving
emails (or reduce the number you receive), and how to contact someone
if you are having problems with the system.
You can add comments to this bug at http://bugzilla.gnome.org/show_bug.cgi?id=423700.
More information about the Gstreamer-bugs
mailing list