[FFmpeg-devel] [PATCH 10/10] Revert "mpeg4videodec: raise an error if sprite_trajectory.table is NULL"
Andreas Rheinhardt
andreas.rheinhardt at gmail.com
Tue Jan 26 15:27:09 EET 2021
Andreas Rheinhardt:
> This reverts commit 6ac0e7818399a57e4684202bac79f35b3561ad1e.
>
> The mpeg4video parser can reach code that presumes that a certain VLC
> has been initialized; yet Libav did not ensure this and Libav bug #1012
> [1] is about an ensuing crash.
>
> Instead of fixing the root cause a simple check for whether said VLC
> has already been initialized was added; said check is inherently racy.
>
> The proper fix is of course to ensure that the VLC is initialized and
> commit 7c76eaeca2791261d3f4f5c98c95f44abdbd879a already ensured this,
> so there was no need to merge 6ac0e7818399a57e4684202bac79f35b3561ad1e
> at all. This commit therefore reverts said commit.
>
> [1]: https://bugzilla.libav.org/show_bug.cgi?id=1012
>
> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at gmail.com>
> ---
> libavcodec/mpeg4videodec.c | 4 ----
> 1 file changed, 4 deletions(-)
>
> diff --git a/libavcodec/mpeg4videodec.c b/libavcodec/mpeg4videodec.c
> index a4479f889b..5bfac4ea5a 100644
> --- a/libavcodec/mpeg4videodec.c
> +++ b/libavcodec/mpeg4videodec.c
> @@ -197,10 +197,6 @@ static int mpeg4_decode_sprite_trajectory(Mpeg4DecContext *ctx, GetBitContext *g
> if (w <= 0 || h <= 0)
> return AVERROR_INVALIDDATA;
>
> - /* the decoder was not properly initialized and we cannot continue */
> - if (sprite_trajectory.table == NULL)
> - return AVERROR_INVALIDDATA;
> -
> for (i = 0; i < ctx->num_sprite_warping_points; i++) {
> int length;
> int x = 0, y = 0;
>
Will apply this tomorrow unless there are objections.
- Andreas
More information about the ffmpeg-devel
mailing list