PR #22878 opened by Marvin Scholz (ePirat) URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/22878 Patch URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/22878.patch
>From 1a8bfc56c86937e3d7e739c7c7d462232baf1a95 Mon Sep 17 00:00:00 2001 From: Marvin Scholz <[email protected]> Date: Tue, 21 Apr 2026 22:12:05 +0200 Subject: [PATCH 1/2] avutil: hdr_dynamic_metadata: handle allocation failure Handle allocation failure properly in av_dynamic_hdr_smpte2094_app5_from_t35. Fixes Coverity issue #1691448 --- libavutil/hdr_dynamic_metadata.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libavutil/hdr_dynamic_metadata.c b/libavutil/hdr_dynamic_metadata.c index 5b8f3ea87d..4505786119 100644 --- a/libavutil/hdr_dynamic_metadata.c +++ b/libavutil/hdr_dynamic_metadata.c @@ -441,6 +441,9 @@ int av_dynamic_hdr_smpte2094_app5_from_t35(AVDynamicHDRSmpte2094App5 *s, const u return AVERROR(ENOMEM); uint8_t *padded_data = av_mallocz(padded_size); + if (!padded_data) + return AVERROR(ENOMEM); + memcpy(padded_data, data, size); ret = init_get_bits8(gb, padded_data, size); if (ret < 0) -- 2.52.0 >From 9002ce393777ce5a9dc023e3f5b9eb425cd03786 Mon Sep 17 00:00:00 2001 From: Marvin Scholz <[email protected]> Date: Tue, 21 Apr 2026 22:14:01 +0200 Subject: [PATCH 2/2] avutil: hdr_dynamic_metadata: fix error code When s is NULL in av_dynamic_hdr_smpte2094_app5_from_t35, that's not an allocation error but just invalid API usage. If there is any allocation failure beforehand that would lead to this, the caller has to check it, like is already done in all usages of this function in FFmpeg itself. --- libavutil/hdr_dynamic_metadata.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavutil/hdr_dynamic_metadata.c b/libavutil/hdr_dynamic_metadata.c index 4505786119..e8987f836d 100644 --- a/libavutil/hdr_dynamic_metadata.c +++ b/libavutil/hdr_dynamic_metadata.c @@ -438,7 +438,7 @@ int av_dynamic_hdr_smpte2094_app5_from_t35(AVDynamicHDRSmpte2094App5 *s, const u size_t padded_size = size + AV_INPUT_BUFFER_PADDING_SIZE; if (!s) - return AVERROR(ENOMEM); + return AVERROR(EINVAL); uint8_t *padded_data = av_mallocz(padded_size); if (!padded_data) -- 2.52.0 _______________________________________________ ffmpeg-devel mailing list -- [email protected] To unsubscribe send an email to [email protected]
