summaryrefslogtreecommitdiff
path: root/libavformat/rawdec.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavformat/rawdec.c')
-rw-r--r--libavformat/rawdec.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/libavformat/rawdec.c b/libavformat/rawdec.c
index 1c9aabd6fd..5e95d10efd 100644
--- a/libavformat/rawdec.c
+++ b/libavformat/rawdec.c
@@ -45,6 +45,10 @@ int ff_raw_read_partial_packet(AVFormatContext *s, AVPacket *pkt)
if (ret < 0) {
av_free_packet(pkt);
return ret;
+ } else if (ret < size) {
+ /* initialize end of packet for partial reads to avoid reading
+ * uninitialized data on allowed overreads */
+ memset(pkt->data + ret, 0, FF_INPUT_BUFFER_PADDING_SIZE);
}
pkt->size = ret;
return ret;