diff options
author | James Almer <jamrial@gmail.com> | 2024-10-17 22:29:31 -0300 |
---|---|---|
committer | James Almer <jamrial@gmail.com> | 2024-10-21 09:43:45 -0300 |
commit | 72f8f76d45d0db36918ff7104c11fb9bfd8679d5 (patch) | |
tree | ff80e8c9630fcef9ba0940c1a6efcd7a15d4738b | |
parent | baa23e40c190ad0afdc2398e60d4da2aacc86ad9 (diff) | |
download | ffmpeg-72f8f76d45d0db36918ff7104c11fb9bfd8679d5.tar.gz |
avutil/pixdesc: ensure the component being read or writen to is valid
If depth is 0, then the component is invalid/unset.
Signed-off-by: James Almer <jamrial@gmail.com>
-rw-r--r-- | libavutil/pixdesc.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/libavutil/pixdesc.c b/libavutil/pixdesc.c index d73c3f0d58..4d61e32a1e 100644 --- a/libavutil/pixdesc.c +++ b/libavutil/pixdesc.c @@ -45,6 +45,9 @@ void av_read_image_line2(void *dst, uint16_t *dst16 = dst; uint32_t *dst32 = dst; + if (!depth) + return; + if (flags & AV_PIX_FMT_FLAG_BITSTREAM) { if (depth == 10) { // Assume all channels are packed into a 32bit value @@ -124,6 +127,9 @@ void av_write_image_line2(const void *src, const uint32_t *src32 = src; const uint16_t *src16 = src; + if (!depth) + return; + if (flags & AV_PIX_FMT_FLAG_BITSTREAM) { if (depth == 10) { // Assume all channels are packed into a 32bit value |