summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian@centricular.com>2014-10-06 10:11:47 +0300
committerSebastian Dröge <sebastian@centricular.com>2014-10-14 09:40:33 +0200
commitff8b1cdc4fc47382d0a662cef02d24ed207f0943 (patch)
tree97d267cf9d43b0493adf5c2b272a2c0132112827
parent5242c804c8f00c7483a18e0c728577b84f92a41c (diff)
downloadgstreamer-plugins-bad-ff8b1cdc4fc47382d0a662cef02d24ed207f0943.tar.gz
videoaggregator: Unmap and free GstVideoFrames as needed after conversion and errors
-rw-r--r--gst-libs/gst/video/gstvideoaggregator.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/gst-libs/gst/video/gstvideoaggregator.c b/gst-libs/gst/video/gstvideoaggregator.c
index 02e485cb9..5d2e3f0b5 100644
--- a/gst-libs/gst/video/gstvideoaggregator.c
+++ b/gst-libs/gst/video/gstvideoaggregator.c
@@ -1056,6 +1056,9 @@ prepare_frames (GstVideoAggregator * vagg, GstVideoAggregatorPad * pad)
converted_buf, GST_MAP_READWRITE)) {
GST_WARNING_OBJECT (vagg, "Could not map converted frame");
+ g_slice_free (GstVideoFrame, converted_frame);
+ gst_video_frame_unmap (frame);
+ g_slice_free (GstVideoFrame, frame);
return FALSE;
}
@@ -1063,6 +1066,7 @@ prepare_frames (GstVideoAggregator * vagg, GstVideoAggregatorPad * pad)
frame);
pad->converted_buffer = converted_buf;
gst_video_frame_unmap (frame);
+ g_slice_free (GstVideoFrame, frame);
} else {
converted_frame = frame;
converted_buf = pad->buffer;