From 3e4e198c5ed26c58d703b28eb417410b85e35370 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Stadler?= Date: Thu, 24 Mar 2011 21:44:07 +0200 Subject: [PATCH] h264parse: don't leak all NAL buffers gst_buffer_replace() doesn't steal the ref. Partial fix for bug #645502. --- gst/videoparsers/h264parse.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/gst/videoparsers/h264parse.c b/gst/videoparsers/h264parse.c index f0ec757f87..4430a0225d 100644 --- a/gst/videoparsers/h264parse.c +++ b/gst/videoparsers/h264parse.c @@ -166,7 +166,11 @@ gst_h264_params_store_nal (GstH264Params * params, GstBuffer ** store, gint id, gst_nal_bs_get_data (bs, &data, &size); buf = gst_buffer_new_and_alloc (size); memcpy (GST_BUFFER_DATA (buf), data, size); - gst_buffer_replace (store + id, buf); + + if (store[id]) + gst_buffer_unref (store[id]); + + store[id] = buf; } static GstH264ParamsSPS *