summaryrefslogtreecommitdiff
path: root/libavformat/wvdec.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavformat/wvdec.c')
-rw-r--r--libavformat/wvdec.c4
1 files changed, 0 insertions, 4 deletions
diff --git a/libavformat/wvdec.c b/libavformat/wvdec.c
index f2bb4c60ba..0aa581534d 100644
--- a/libavformat/wvdec.c
+++ b/libavformat/wvdec.c
@@ -287,25 +287,21 @@ static int wv_read_packet(AVFormatContext *s, AVPacket *pkt)
memcpy(pkt->data, wc->block_header, WV_HEADER_SIZE);
ret = avio_read(s->pb, pkt->data + WV_HEADER_SIZE, wc->header.blocksize);
if (ret != wc->header.blocksize) {
- av_packet_unref(pkt);
return AVERROR(EIO);
}
while (!(wc->header.flags & WV_FLAG_FINAL_BLOCK)) {
if ((ret = wv_read_block_header(s, s->pb)) < 0) {
- av_packet_unref(pkt);
return ret;
}
off = pkt->size;
if ((ret = av_grow_packet(pkt, WV_HEADER_SIZE + wc->header.blocksize)) < 0) {
- av_packet_unref(pkt);
return ret;
}
memcpy(pkt->data + off, wc->block_header, WV_HEADER_SIZE);
ret = avio_read(s->pb, pkt->data + off + WV_HEADER_SIZE, wc->header.blocksize);
if (ret != wc->header.blocksize) {
- av_packet_unref(pkt);
return (ret < 0) ? ret : AVERROR_EOF;
}
}