aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJames Almer <jamrial@gmail.com>2021-06-07 00:04:21 -0300
committerJames Almer <jamrial@gmail.com>2021-06-13 16:10:37 -0300
commit8a6103326e165b30510378cbd0e7953910f2b55c (patch)
treefebd1307cd9ab679e0e8183971e44c4f3f56bcde
parent7916c1471318f17332ff4c7ee7e330696a7afcbf (diff)
downloadffmpeg-8a6103326e165b30510378cbd0e7953910f2b55c.tar.gz
avutil/samplefmt: don't add offsets to NULL pointers
Signed-off-by: James Almer <jamrial@gmail.com>
-rw-r--r--libavutil/samplefmt.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/libavutil/samplefmt.c b/libavutil/samplefmt.c
index fc077f6444..c7428940e1 100644
--- a/libavutil/samplefmt.c
+++ b/libavutil/samplefmt.c
@@ -160,13 +160,20 @@ int av_samples_fill_arrays(uint8_t **audio_data, int *linesize,
if (buf_size < 0)
return buf_size;
+ if (linesize)
+ *linesize = line_size;
+
+ memset(audio_data, 0, planar
+ ? sizeof(*audio_data) * nb_channels
+ : sizeof(*audio_data));
+
+ if (!buf)
+ return buf_size;
+
audio_data[0] = (uint8_t *)buf;
for (ch = 1; planar && ch < nb_channels; ch++)
audio_data[ch] = audio_data[ch-1] + line_size;
- if (linesize)
- *linesize = line_size;
-
return buf_size;
}