[gst-cvs] gst-plugins-bad: schroenc: minor memleak fix
David Schleef
ds at kemper.freedesktop.org
Sat Nov 27 19:10:01 PST 2010
Module: gst-plugins-bad
Branch: master
Commit: cb3bac56bff2d5ffabbbb31579836fe2eae004ed
URL: http://cgit.freedesktop.org/gstreamer/gst-plugins-bad/commit/?id=cb3bac56bff2d5ffabbbb31579836fe2eae004ed
Author: David Schleef <ds at schleef.org>
Date: Mon Nov 15 11:37:39 2010 -0800
schroenc: minor memleak fix
---
ext/schroedinger/gstschroenc.c | 10 ++++++++++
1 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/ext/schroedinger/gstschroenc.c b/ext/schroedinger/gstschroenc.c
index 4a01028..b4e50a9 100644
--- a/ext/schroedinger/gstschroenc.c
+++ b/ext/schroedinger/gstschroenc.c
@@ -429,6 +429,14 @@ gst_schro_enc_stop (GstBaseVideoEncoder * base_video_encoder)
schro_encoder_free (schro_enc->encoder);
schro_enc->encoder = NULL;
}
+ if (schro_enc->seq_header_buffer) {
+ gst_buffer_unref (schro_enc->seq_header_buffer);
+ schro_enc->seq_header_buffer = NULL;
+ }
+ if (schro_enc->video_format) {
+ g_free (schro_enc->video_format);
+ schro_enc->video_format = NULL;
+ }
return TRUE;
}
@@ -775,6 +783,7 @@ gst_schro_enc_process (GstSchroEnc * schro_enc)
(double *) GST_BUFFER_DATA (buf), 21);
structure = gst_structure_new ("schroenc",
"frame-stats", GST_TYPE_BUFFER, buf, NULL);
+ gst_buffer_unref (buf);
message = gst_message_new_element (GST_OBJECT (schro_enc), structure);
gst_element_post_message (GST_ELEMENT (schro_enc), message);
}
@@ -784,6 +793,7 @@ gst_schro_enc_process (GstSchroEnc * schro_enc)
GST_DEBUG ("got eos");
//frame = schro_enc->eos_frame;
frame = NULL;
+ schro_buffer_unref (encoded_buffer);
}
/* FIXME: Get the frame from somewhere somehow... */
More information about the Gstreamer-commits
mailing list