The to_free AVframe must be freed just like the other ones.
Indeed, the calling application may expect all frames to be
released.
(This regression caused use-after-free in VLC with hwaccel.)
Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
The description if for the function, not the group.
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Otherwise the created buffer can be smaller than buf_size, which results
in buffer overreads if the original image has extra padding on every line.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Mostly a copy&paste from other hash functions, with changes
where required.
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
first_pic_header_flag needs to be set to allow the parsing code to change
some stream parameters, and not error out.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
The drawbox video filter is drawing lines one pixel thinner than
requested. The default thickness is 4 pixel but in fact the lines
drawn by default are only 3 pixel wide.
Change the comparisons in the code to fix this off-by-one bug. Also
change the default thickness from 4 to 3 to minimize the unexpected
changes from the user's perspective.
As I was already touching these lines, I also removed the "maximum" in
the thickness parameter description, as I don't think it was adding
any value and I even found it confusing.
Reviewed-by: Andrey Utkin <andrey.krieger.utkin@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Fixes out of array writes with multiple threads
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* qatar/master:
4xm: check bitstream_size boundary before using it
Conflicts:
libavcodec/4xm.c
See: 9c661e95
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit '94aefb1932be882fd93f66cf790ceb19ff575c19':
4xm: do not overread the source buffer in decode_p_block
Conflicts:
libavcodec/4xm.c
The checks are replaced by av_assert0() as the conditions should
be impossible. If these asserts fail, there is a bug elsewhere
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit 'be373cb50d3c411366fec7eef2eb3681abe48f96':
4xm: do not overread the prestream buffer
Conflicts:
libavcodec/4xm.c
See: 9c661e95
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit 'de2e5777e225e75813daf2373c95e223651fd89a':
4xm: validate the buffer size before parsing it
Conflicts:
libavcodec/4xm.c
See: 9c661e95
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit '145023f57262d21474e35b4a6069cf95136339d4':
4xm: reject frames not compatible with the declared version
See: c433823750
Merged-by: Michael Niedermayer <michaelni@gmx.at>