X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=ext%2Fspeex%2Fgstspeexenc.c;h=f427f08826f6584bfc59fb421a622ea3786718f4;hb=07cc855b242e8ff757786bd2320f4db74e99cdfa;hp=0b124e39cff90687b5c832fcf0b9c01e7b54af2b;hpb=2b29d9852c97f50bfdff55bcfe61d888fe2d5aaa;p=platform%2Fupstream%2Fgstreamer.git diff --git a/ext/speex/gstspeexenc.c b/ext/speex/gstspeexenc.c index 0b124e3..f427f08 100644 --- a/ext/speex/gstspeexenc.c +++ b/ext/speex/gstspeexenc.c @@ -270,6 +270,8 @@ gst_speex_enc_stop (GstAudioEncoder * benc) g_slist_foreach (enc->headers, (GFunc) gst_buffer_unref, NULL); enc->headers = NULL; + gst_tag_setter_reset_tags (GST_TAG_SETTER (enc)); + return TRUE; } @@ -530,7 +532,7 @@ gst_speex_enc_encode (GstSpeexEnc * enc, GstBuffer * buf) gint frame_size = enc->frame_size; gint bytes = frame_size * 2 * enc->channels, samples; gint outsize, written, dtx_ret = 0; - guint8 *data, *bdata, *outdata; + guint8 *data, *data0 = NULL, *bdata, *outdata; gsize bsize, size; GstBuffer *outbuf; GstFlowReturn ret = GST_FLOW_OK; @@ -542,7 +544,7 @@ gst_speex_enc_encode (GstSpeexEnc * enc, GstBuffer * buf) GST_DEBUG_OBJECT (enc, "draining; adding silence samples"); size = ((bsize / bytes) + 1) * bytes; - data = g_malloc0 (size); + data0 = data = g_malloc0 (size); memcpy (data, bdata, bsize); gst_buffer_unmap (buf, bdata, bsize); bdata = NULL; @@ -606,6 +608,7 @@ gst_speex_enc_encode (GstSpeexEnc * enc, GstBuffer * buf) outbuf, samples); done: + g_free (data0); return ret; }