From: Zhao Zhili <zhiliz...@tencent.com> Parse format can be called multiple times, e.g., when resolution changed. If getInt32 fails, optional member variables will retain their previously set values without modification. This can be a big problem for new resolution with old crop info.
This patch reset optional fields to zero when getInt32 failed. --- libavcodec/mediacodecdec_common.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libavcodec/mediacodecdec_common.c b/libavcodec/mediacodecdec_common.c index 8a270f2f29..ae336ab835 100644 --- a/libavcodec/mediacodecdec_common.c +++ b/libavcodec/mediacodecdec_common.c @@ -537,6 +537,8 @@ static int mediacodec_wrap_sw_buffer(AVCodecContext *avctx, av_log(avctx, AV_LOG_ERROR, "Could not get %s from format %s\n", key, format); \ ret = AVERROR_EXTERNAL; \ goto fail; \ + } else { \ + (name) = 0; \ } \ } while (0) \ -- 2.46.0 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".