66d5e43b99
avformat/utils: Fix memleaks
...
ff_read_packet had potential memleaks:
1. If av_packet_make_refcounted fails, it means that the packet is not
refcounted, but it could nevertheless carry side data and therefore
needs to be unreferenced.
2. If putting a packet on a packet list fails, it wasn't unreferenced.
Furthermore, read_frame_internal leaked a packet's (side) data if a
context update was required and failed.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com >
Signed-off-by: James Almer <jamrial@gmail.com >
2019-09-25 20:53:01 -03:00
e045be92cd
avformat/utils: Assert that stream_index is valid
...
There is currently an ordinary check for this (which would lead to a
memleak), but given that no demuxer should ever return a packet with an
invalid stream_index it is more appropriate for this to be an assert.
FATE passes with this change.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com >
Signed-off-by: James Almer <jamrial@gmail.com >
2019-09-25 20:53:01 -03:00
c23797bc33
lavf/mov: Fix timestamp rescale on sidx atom
...
Fix #5090
Fix the timestamp rescale issue, from sidx timebase to
stream's timebase.
2019-09-26 06:55:44 +08:00
dbd3dbb476
Revert "lavc/tiff: correct the default value of YCbCrSubsampling to 2x2"
...
This reverts commit eb5d0f18ff
.
Together with 89f464e9
, it breaks decoding of tiff files like fate-suite/exif/image_small.tiff
2019-09-26 00:34:44 +02:00
3def984a98
avcodec/dnxhdenc: return error if av_malloc failed
...
Signed-off-by: Limin Wang <lance.lmwang@gmail.com >
Signed-off-by: James Almer <jamrial@gmail.com >
2019-09-25 17:56:44 -03:00
ced3b8c61e
avfilter/vf_zoompan: fix leaks
2019-09-25 21:48:59 +02:00
20242bc762
avfilter/vf_zoompan: forward status back from output to input
2019-09-25 21:37:26 +02:00
631f7acc6c
avfilter/vf_stack: add slice threading
2019-09-25 19:02:57 +02:00
44095564d4
avfilter/vf_stack: simplify main processing path
2019-09-25 18:40:56 +02:00
1a17a66b09
avformat/sdsdec: fix undefined behaviour
...
Fixes #8163 , #8164 , #8165 .
2019-09-25 18:01:09 +02:00
d58752bcb9
avformat/aiffdec: fix signed integer overflow
...
Fixes #8151
2019-09-25 17:40:50 +02:00
121bf1b3b8
avcodec/decode: Check max_samples in get_buffer_internal()
...
This checks max_samples at the same level as max_pixels
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2019-09-25 17:21:23 +02:00
68c80dc312
tools/target_dec_fuzzer: Set max_samples
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2019-09-25 17:18:37 +02:00
f8406ab4b9
avcodec: add max_samples
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2019-09-25 17:18:37 +02:00
402dbd4633
avfilter/Makefile: fix case for sierpinski
2019-09-25 14:15:55 +02:00
9c3e1c1937
avfilter: add sierpinski video source
2019-09-25 14:06:26 +02:00
55b32584b8
avfilter/vf_premultiply: forward status back from output to all input links
2019-09-25 13:07:04 +02:00
da9890f6c7
avfilter/vf_fieldmatch: forward status back from output to all input links
...
Fixes #8199 .
2019-09-25 13:07:04 +02:00
2962101e40
avfilter/vf_fieldmatch: fix more leaks
2019-09-25 13:06:30 +02:00
0d05aa052c
avfilter/vf_v360: add sinusoidal format
2019-09-25 13:06:30 +02:00
eb5d0f18ff
lavc/tiff: correct the default value of YCbCrSubsampling to 2x2
2019-09-25 10:47:46 +02:00
5f13859873
lavf/4xm: fix memory leak in error handing path
...
need to free the header in error path.
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc >
Signed-off-by: Jun Zhao <barryjzhao@tencent.com >
2019-09-25 11:23:03 +08:00
85e338ab0d
libavcodec/libx265: add a flag to output ROI warnings only once.
...
Signed-off-by: Guo, Yejun <yejun.guo@intel.com >
2019-09-24 17:22:15 +01:00
104d44138b
libavcodec/libx264: add a flag to output ROI warnings only once.
...
Signed-off-by: Guo, Yejun <yejun.guo@intel.com >
2019-09-24 17:22:15 +01:00
95e5396919
avcodec/utils: Optimize ff_color_frame() using memcpy()
...
4650975 -> 4493240 dezicycles
This optimizes lines 2 and later. Line 1 still uses av_memcpy_backptr()
This change originally fixed ossfuzz 10790 but this is now fixed by other
optimizations already
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2019-09-24 17:53:39 +02:00
3dce4d03d5
avcodec/aacdec: Check if we run out of input in read_stream_mux_config()
...
Fixes: Infinite loop
Fixes: 16920/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_AAC_LATM_fuzzer-5653421289373696
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2019-09-24 17:53:39 +02:00
1e984a6915
avcodec/h264_slice: clear frame only on gaps when it is not otherwise initilaized
...
Fixes: Timeout (53sec -> 31sec)
Fixes: 16908/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_H264_fuzzer-5711207859748864
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2019-09-24 17:53:39 +02:00
340ab13504
avcodec/utils: Use av_memcpy_backptr() in ff_color_frame()
...
Fixes: Timeout (191sec -> 53sec)
Fixes: 16908/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_H264_fuzzer-5711207859748864
Fixes: 10709/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_H264_fuzzer-5630617975259136
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2019-09-24 17:53:39 +02:00
033d2c4884
avcodec/smacker: Fix integer overflow in signed int multiply in SMK_BLK_FILL
...
Fixes: signed integer overflow: 238 * 16843009 cannot be represented in type 'int'
Fixes: 16958/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_SMACKER_fuzzer-5193905355620352
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2019-09-24 17:53:39 +02:00
b30c07cc2b
avcodec/alac: Fix invalid shifts in 20/24 bps
...
Fixes: left shift of negative value -256
Fixes: 16892/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_ALAC_fuzzer-4880802642395136
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2019-09-24 17:53:39 +02:00
0831cbfe09
avcodec/alac: fix undefined behavior with INT_MIN in lpc_prediction()
...
Fixes: signed integer overflow: -2147483648 * -1 cannot be represented in type 'int'
Fixes: 16786/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_ALAC_fuzzer-5632818851348480
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2019-09-24 17:53:39 +02:00
72db18e929
avformat/utils: Do not assume duration is non negative in compute_pkt_fields()
...
Several subtitle demuxers set negative durations
Fixes: signed integer overflow: 9223372036854775807 - -1 cannot be represented in type 'long'
Fixes: 16925/clusterfuzz-testcase-minimized-ffmpeg_DEMUXER_fuzzer-5766519790764032
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2019-09-24 17:53:39 +02:00
c7ccbf40ed
avcodec/ffwavesynth: Fix integer overflow in timestamps
...
Fixes: signed integer overflow: 9223371075321077760 * 2 cannot be represented in type 'long'
Fixes: 16447/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_FFWAVESYNTH_fuzzer-5698937431785472
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2019-09-24 17:53:39 +02:00
27a2f65948
avformat/vividas: Test size and packet numbers a bit more
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2019-09-24 17:53:39 +02:00
8e51f35f81
avformat/vividas: Check n_sb_blocks against input space
...
Fixes: OOM
Fixes: 16726/clusterfuzz-testcase-minimized-ffmpeg_DEMUXER_fuzzer-5719320750981120
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2019-09-24 17:53:39 +02:00
cede385018
avcodec/aacdec_fixed: Add FF_CODEC_CAP_INIT_CLEANUP
...
Fixes: memleaks
Fixes: 16788/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_AAC_FIXED_fuzzer-5649873898045440
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2019-09-24 17:53:39 +02:00
59163731e9
tools/target_dec_fuzzer: consider potential padding/edge in pixel threshold
...
Fixes: Timeout (73sec ->30ms)
Fixes: 16921/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_DIRAC_fuzzer-5689384594046976
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2019-09-24 17:53:39 +02:00
d217691eec
libavcodec/mpeg12dec: Check input for minimal frame size
...
Fixes: Timeout (35sec -> 6sec)
Fixes: 16901/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_MPEGVIDEO_fuzzer-5729024726269952
Fixes: 16901/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_MPEGVIDEO_fuzzer-5642388592132096
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2019-09-24 17:53:39 +02:00
5fe6a9db15
tools/target_dec_fuzzer: Adjust threshold for MSS2
...
The decoder is slow
Fixes: Timeout (94sec -> 7sec)
Fixes: 16417/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_MSS2_fuzzer-5711668050395136
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2019-09-24 17:53:39 +02:00
f83ac5fd79
avcodec/cbs_h264: Automatically free SEI payload on error
...
If adding an SEI message to an access unit fails, said SEI message was
not touched, so that the caller had to free any data associated with it
that might need to be freed. But given that ff_cbs_h264_add_sei_message
can simply call cbs_h264_free_sei_payload, one can easily free
the content of the SEI payload.
This fixes a memleak when inserting a user data unregistered string for
h264_metadata fails.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com >
2019-09-24 15:54:31 +01:00
8c7d5fcfc3
avcodec/dxv: Check op_offset in both directions
...
Fixes: signed integer overflow: 61 + 2147483647 cannot be represented in type 'int'
Fixes: 15311/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_DXV_fuzzer-5742552826773504
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2019-09-24 12:28:26 +02:00
c7c0229beb
avcodec/truespeech: Eliminate some left shifts
...
This avoids some invalid shifts
Reviewed-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com >
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2019-09-24 12:25:48 +02:00
74bbf9bc82
avcodec/adpcm: Check number of channels for MTAF
...
Fixes: out of array access
Fixes: 17608/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_ADPCM_MTAF_fuzzer-5074936267276288
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Reviewed-by: Paul B Mahol <onemda@gmail.com >
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2019-09-24 12:24:41 +02:00
89cbbe9f70
avcodec/nvenc: fix typo in new Windows driver version
...
Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org >
2019-09-24 12:00:00 +02:00
a214c17414
avfilter/vf_v360: do not use mod where it is not needed
2019-09-24 11:28:11 +02:00
3104100a12
avcodec/exr: cosmetics
...
Signed-off-by: Limin Wang <lance.lmwang@gmail.com >
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2019-09-23 22:16:00 +02:00
e9e9f79a19
avformat/hashenc: fix incorrect use of av_mallocz_array()
...
Fixes CID 1453867, CID 1453866, CID 1453865.
Signed-off-by: Moritz Barsnick <barsnick@gmx.net >
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2019-09-23 22:16:00 +02:00
648f5c9382
avcodec/nvenc: add driver version info for SDK 9.1
...
Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org >
2019-09-23 15:47:27 +02:00
d889ae3396
avcodec/bsf: check that AVBSFInternal was allocated before dereferencing it
...
This can happen when av_bsf_free() is called on av_bsf_alloc() failure.
Reviewed-by: Paul B Mahol <onemda@gmail.com >
Signed-off-by: James Almer <jamrial@gmail.com >
2019-09-23 10:02:03 -03:00
eaf3c4b8bf
avfilter/vf_v360: fix regression introduced in b342678bc4
2019-09-23 12:27:41 +02:00