mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-23 16:50:47 +00:00
smpte: Fix memory leak
In gst_smpte_collected(), check upfront if input formats are same or not. This avoids allocation of in1 and in2 buffers and subsequent memory leak when input formats do not match. https://bugzilla.gnome.org/show_bug.cgi?id=754153
This commit is contained in:
parent
dd1bd2beb3
commit
cac239ab89
1 changed files with 3 additions and 3 deletions
|
@ -468,6 +468,9 @@ gst_smpte_collected (GstCollectPads * pads, GstSMPTE * smpte)
|
|||
!gst_pad_has_current_caps (smpte->sinkpad2))
|
||||
goto not_negotiated;
|
||||
|
||||
if (!gst_video_info_is_equal (&smpte->vinfo1, &smpte->vinfo2))
|
||||
goto input_formats_do_not_match;
|
||||
|
||||
if (smpte->send_stream_start) {
|
||||
gchar s_id[32];
|
||||
|
||||
|
@ -506,9 +509,6 @@ gst_smpte_collected (GstCollectPads * pads, GstSMPTE * smpte)
|
|||
gst_buffer_unmap (in2, &map);
|
||||
}
|
||||
|
||||
if (!gst_video_info_is_equal (&smpte->vinfo1, &smpte->vinfo2))
|
||||
goto input_formats_do_not_match;
|
||||
|
||||
if (smpte->position < smpte->end_position) {
|
||||
outbuf = gst_buffer_new_and_alloc (I420_SIZE (smpte->width, smpte->height));
|
||||
|
||||
|
|
Loading…
Reference in a new issue