compositor: Don't leak all buffers while crossfading and not all pads are crossfading
This commit is contained in:
parent
aa3e64c71d
commit
3e067ae333
@ -833,8 +833,13 @@ gst_compositor_fill_transparent (GstCompositor * self, GstVideoFrame * frame,
|
|||||||
|
|
||||||
if (!gst_video_frame_map (nframe, &frame->info, cbuffer, GST_MAP_WRITE)) {
|
if (!gst_video_frame_map (nframe, &frame->info, cbuffer, GST_MAP_WRITE)) {
|
||||||
GST_WARNING_OBJECT (self, "Could not map output buffer");
|
GST_WARNING_OBJECT (self, "Could not map output buffer");
|
||||||
|
gst_buffer_unref (cbuffer);
|
||||||
return GST_FLOW_ERROR;
|
return GST_FLOW_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* the last reference is owned by the frame and released once the frame
|
||||||
|
* is unmapped. We leak it if we don't unref here */
|
||||||
|
gst_buffer_unref (cbuffer);
|
||||||
} else {
|
} else {
|
||||||
nframe = frame;
|
nframe = frame;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user