diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2014-12-25 12:41:36 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2014-12-25 12:51:48 +0100 |
commit | 443bd2715d42c8cd867a1f47ff6edf44e12d53db (patch) | |
tree | 1560262544d0547f4778f8a3da635884494af06f | |
parent | 68fa549230af35179df2a2af2bdb84ee6c825bed (diff) | |
download | ffmpeg-443bd2715d42c8cd867a1f47ff6edf44e12d53db.tar.gz |
avformat/wtvdec: Use av_freep() avoid leaving stale pointers in memory
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r-- | libavformat/wtvdec.c | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/libavformat/wtvdec.c b/libavformat/wtvdec.c index 7fc5e6377c..f20030009a 100644 --- a/libavformat/wtvdec.c +++ b/libavformat/wtvdec.c @@ -204,8 +204,8 @@ static AVIOContext * wtvfile_open_sector(int first_sector, uint64_t length, int wf->sector_bits = length & (1ULL<<63) ? WTV_SECTOR_BITS : WTV_BIGSECTOR_BITS; if (!wf->nb_sectors) { - av_free(wf->sectors); - av_free(wf); + av_freep(&wf->sectors); + av_freep(&wf); return NULL; } @@ -224,25 +224,25 @@ static AVIOContext * wtvfile_open_sector(int first_sector, uint64_t length, int /* seek to initial sector */ wf->position = 0; if (seek_by_sector(s->pb, wf->sectors[0], 0) < 0) { - av_free(wf->sectors); - av_free(wf); + av_freep(&wf->sectors); + av_freep(&wf); return NULL; } wf->pb_filesystem = s->pb; buffer = av_malloc(1 << wf->sector_bits); if (!buffer) { - av_free(wf->sectors); - av_free(wf); + av_freep(&wf->sectors); + av_freep(&wf); return NULL; } pb = avio_alloc_context(buffer, 1 << wf->sector_bits, 0, wf, wtvfile_read_packet, NULL, wtvfile_seek); if (!pb) { - av_free(buffer); - av_free(wf->sectors); - av_free(wf); + av_freep(&buffer); + av_freep(&wf->sectors); + av_freep(&wf); } return pb; } @@ -304,7 +304,7 @@ static AVIOContext * wtvfile_open2(AVFormatContext *s, const uint8_t *buf, int b static void wtvfile_close(AVIOContext *pb) { WtvFile *wf = pb->opaque; - av_free(wf->sectors); + av_freep(&wf->sectors); av_freep(&pb->opaque); av_freep(&pb->buffer); av_free(pb); |