summaryrefslogtreecommitdiff
path: root/libavformat/dfa.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavformat/dfa.c')
-rw-r--r--libavformat/dfa.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/libavformat/dfa.c b/libavformat/dfa.c
index 40e3fad068..b16672ccde 100644
--- a/libavformat/dfa.c
+++ b/libavformat/dfa.c
@@ -101,6 +101,7 @@ static int dfa_read_packet(AVFormatContext *s, AVPacket *pkt)
frame_size = AV_RL32(pkt->data + pkt->size - 8);
if (frame_size > INT_MAX - 4) {
av_log(s, AV_LOG_ERROR, "Too large chunk size: %"PRIu32"\n", frame_size);
+ av_packet_unref(pkt);
return AVERROR(EIO);
}
if (AV_RL32(pkt->data + pkt->size - 12) == MKTAG('E', 'O', 'F', 'R')) {