- 25 Dec, 2019 3 commits
-
-
Paul B Mahol authored
-
Michael Niedermayer authored
Fixes: out of array read Fixes: 19300/clusterfuzz-testcase-minimized-ffmpeg_BSF_VP9_METADATA_fuzzer-5653911730126848 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpegReviewed-by: James Almer <jamrial@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-
Limin Wang authored
Signed-off-by: Limin Wang <lance.lmwang@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-
- 24 Dec, 2019 1 commit
-
-
Gyan Doshi authored
-
- 23 Dec, 2019 34 commits
-
-
Paul B Mahol authored
-
Paul B Mahol authored
-
Paul B Mahol authored
Fixes -c:s copy case.
-
Paul B Mahol authored
-
Paul B Mahol authored
-
Zhong Li authored
Fix CID 1456088 Signed-off-by: Zhong Li <zhongli_dev@126.com>
-
Paul B Mahol authored
-
Paul B Mahol authored
Should help finding less false positives.
-
Paul B Mahol authored
-
Zhao Zhili authored
-
Zhao Zhili authored
-
Zhao Zhili authored
The argument 'opaque' is always NULL since 0acf7e26 (2013), and avfilter_init_filter() was removed in 52067b3c (2016).
-
Zhao Zhili authored
-
Zhao Zhili authored
!(c->pix_fmt != AV_PIX_FMT_NONE || c->got_format_from_params) equals (c->pix_fmt == AV_PIX_FMT_NONE) && !c->got_format_from_params 1. When (c->pix_fmt == AV_PIX_FMT_NONE) is true, got_format_from_params is always false, the flag doesn't contribute to the result. 2. When the first part is false, the second part doesn't matter, the flag doesn't contribute to the result. The result only depends on c->pix_fmt.
-
Gyan Doshi authored
The MPEG-TS muxer will mux streams with unsupported codec id as a private data stream; this usually makes the stream not recognizable by ffmpeg and likely other tools.
-
James Almer authored
Signed-off-by: James Almer <jamrial@gmail.com>
-
Steven Liu authored
Signed-off-by: Steven Liu <lq@onvideo.cn> Reviewed-by: Lou Logan <lou@lrcd.com>
-
Nicolas George authored
This allows to remove the queued frame entirely.
-
Nicolas George authored
This design is no longer used and was replaced a long time ago.
-
Nicolas George authored
-
Nicolas George authored
It is never used.
-
Nicolas George authored
The frame is immediately pushed, the fifo has never more than one.
-
Limin Wang authored
Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
-
Andreas Rheinhardt authored
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
Andreas Rheinhardt authored
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Reviewed-by: Steven Liu <lq@onvideo.cn>
-
Andreas Rheinhardt authored
When a parameter like e.g. language is contained more than once in the part of var_stream_map pertaining to a single VariantStream, the later one just overwrites the pointer to the earlier one, leading to a memleak. This commit changes this by handling the situation gracefully: The earlier string is silently freed first, so that the last one wins. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Reviewed-by: Steven Liu <lq@onvideo.cn>
-
Andreas Rheinhardt authored
"If an error is detected, localtime_r() shall return a null pointer and set errno to indicate the error." Yet in case this happened in hls_init(), AVERROR(ENOMEM) has been returned. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Reviewed-by: Steven Liu <lq@onvideo.cn>
-
Andreas Rheinhardt authored
The hls muxer allocates an array of VariantStreams, a structure that contains pointers to objects that need to be freed on their own. This means that the number of allocated VariantStreams needs to be correct when they are freed; yet the number of VariantStreams is set in update_variant_stream_info() resp. parse_variant_stream_mapstring() before the allocation has been checked for success, so that upon error an attempt would be made to free the objects whose pointers are positioned at position NULL (the location of VariantStreams) + offsetof(VariantStream, the corresponding pointer). Furthermore d1fe1344 added another possibility for the first function to leave an inconsistent state behind: If an allocation of one of the objects referenced by the VariantStream fails, the VariantStream will be freed, but the number of allocated VariantStreams isn't reset, leading to the same problem as above. (This was done in the mistaken belief that the VariantStreams array would leak otherwise.) Essentially the same also happens for the number of cc-streams. It has been fixed, too. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Reviewed-by: Steven Liu <lq@onvideo.cn>
-
Andreas Rheinhardt authored
Under certain circumstances hls_write_packet() would add options to an AVDictionary. Said dictionary was never explicitly freed, instead it was presumed that these options would be consumed when opening a new IO-context. This left several possibilities for memleaks: a) When no new IO-context would be opened at all. This is possible when using both the flags temp_file and single_file together with a file output. b) When an error happens before one actually tries to open the new IO-context. c) When the new IO-context does not consume all options. All three have been fixed; furthermore, the AVDictionary has been put into a smaller scope (namely the only part of hls_write_packet() where it is actually used). Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Reviewed-by: Steven Liu <lq@onvideo.cn>
-
Andreas Rheinhardt authored
hls_mux_init() currently leaks an AVDictionary if opening a dynamic buffer fails or if avformat_init_output fails. This has been fixed by moving the initialization resp. the freeing of the dictionary around: In the former case to a place after opening the dynamic buffer, in the latter to a place before the check for initialization failure so that it is done unconditionally. Furthermore, the dictionary is now only copied and freed if the options in it are actually used (namely when in SEGMENT_TYPE_FMP4 mode). Finally, a similar situation in hls_start() has been fixed, too. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Reviewed-by: Steven Liu <lq@onvideo.cn>
-
Andreas Rheinhardt authored
hls_init() would allocate a buffer, although it is only needed in one of two branches that follow. This commit moves the allocation to the branch that actually needs the buffer. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Reviewed-by: Steven Liu <lq@onvideo.cn>
-
Andreas Rheinhardt authored
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Reviewed-by: Steven Liu <lq@onvideo.cn>
-
Andreas Rheinhardt authored
Before ed897633, the hls muxer would free its child AVFormatContexts and reset the pointer to these contexts to NULL immediately afterwards; ed897633 moved the former to later (into a separate function), but kept the resetting, ensuring that the child context leaks. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Reviewed-by: Steven Liu <lq@onvideo.cn>
-
Jun Zhao authored
Before this fix, ffmpeg -h full | grep map get the command dump like: -map [-]input_file_id[:stream_specifier][,sync_file_id[:stream_s set input stream mapping ^ | truncated after this fix, we can get full option dump. Found-by: vacingfang <vacingfang@tencent.com> Signed-off-by: Jun Zhao <barryjzhao@tencent.com>
-
- 21 Dec, 2019 2 commits
-
-
James Almer authored
Based on h264 code. Reviewed-by: Limin Wang <lance.lmwang@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
-
Paul B Mahol authored
-