[vlc-devel] [PATCH 04/25] image: use es_format_Copy() instead of plain structure copy
Steve Lhomme
robux4 at videolabs.io
Mon Jul 10 16:52:08 CEST 2017
There's potentially double free when calling es_format_Clean() on the copied
structure.
---
src/misc/image.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/misc/image.c b/src/misc/image.c
index c505b5bfcc..a9a4d4e605 100644
--- a/src/misc/image.c
+++ b/src/misc/image.c
@@ -771,10 +771,10 @@ static filter_t *CreateFilter( vlc_object_t *p_this, es_format_t *p_fmt_in,
p_filter->owner.video.buffer_new =
(picture_t *(*)(filter_t *))video_new_buffer;
- p_filter->fmt_in = *p_fmt_in;
- p_filter->fmt_out = *p_fmt_in;
+ es_format_Copy( &p_filter->fmt_in, p_fmt_in );
+ es_format_Copy( &p_filter->fmt_out, p_fmt_in );
+ video_format_Copy( &p_filter->fmt_out.video, p_fmt_out );
p_filter->fmt_out.i_codec = p_fmt_out->i_chroma;
- p_filter->fmt_out.video = *p_fmt_out;
p_filter->p_module = module_need( p_filter, "video converter", NULL, false );
if( !p_filter->p_module )
--
2.12.1
More information about the vlc-devel
mailing list