[0.11] gst-plugins-ugly: asfdemux: Don't leak pending payload buffers
Tim Müller
tpm at kemper.freedesktop.org
Mon Oct 31 07:35:27 PDT 2011
Module: gst-plugins-ugly
Branch: 0.11
Commit: daecb7445672c1b334d64a701a20528dc305fe9e
URL: http://cgit.freedesktop.org/gstreamer/gst-plugins-ugly/commit/?id=daecb7445672c1b334d64a701a20528dc305fe9e
Author: Edward Hervey <bilboed at bilboed.com>
Date: Sat Oct 29 11:57:40 2011 +0200
asfdemux: Don't leak pending payload buffers
Fixes #662964
---
gst/asfdemux/gstasfdemux.c | 10 ++++++++++
1 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/gst/asfdemux/gstasfdemux.c b/gst/asfdemux/gstasfdemux.c
index 020d749..6391c44 100644
--- a/gst/asfdemux/gstasfdemux.c
+++ b/gst/asfdemux/gstasfdemux.c
@@ -156,6 +156,16 @@ gst_asf_demux_free_stream (GstASFDemux * demux, AsfStream * stream)
gst_object_unref (stream->pad);
stream->pad = NULL;
}
+
+ while (stream->payloads->len > 0) {
+ AsfPayload *payload;
+ guint last;
+
+ last = stream->payloads->len - 1;
+ payload = &g_array_index (stream->payloads, AsfPayload, last);
+ gst_buffer_replace (&payload->buf, NULL);
+ g_array_remove_index (stream->payloads, last);
+ }
if (stream->payloads) {
g_array_free (stream->payloads, TRUE);
stream->payloads = NULL;
More information about the gstreamer-commits
mailing list