# HG changeset patch # User bcoudurier # Date 1206028845 0 # Node ID e22efe21156d70136d74ddf3f323a3e9e3ee2796 # Parent 01f6f3c905dbf3378c8cbe762e2ba8451aea4889 free track data asap diff -r 01f6f3c905db -r e22efe21156d mov.c --- a/mov.c Thu Mar 20 15:57:11 2008 +0000 +++ b/mov.c Thu Mar 20 16:00:45 2008 +0000 @@ -1271,6 +1271,14 @@ st->codec->sample_rate= 0; /* let decoder init parameters properly */ break; } + + /* Do not need those anymore. */ + av_freep(&sc->chunk_offsets); + av_freep(&sc->sample_to_chunk); + av_freep(&sc->sample_sizes); + av_freep(&sc->keyframes); + av_freep(&sc->stts_data); + return 0; } @@ -1545,7 +1553,7 @@ { MOVContext *mov = s->priv_data; ByteIOContext *pb = s->pb; - int i, err; + int err; MOV_atom_t atom = { 0, 0, 0 }; mov->fc = s; @@ -1564,15 +1572,6 @@ } dprintf(mov->fc, "on_parse_exit_offset=%d\n", (int) url_ftell(pb)); - for(i=0; inb_streams; i++) { - MOVStreamContext *sc = s->streams[i]->priv_data; - /* Do not need those anymore. */ - av_freep(&sc->chunk_offsets); - av_freep(&sc->sample_to_chunk); - av_freep(&sc->sample_sizes); - av_freep(&sc->keyframes); - av_freep(&sc->stts_data); - } return 0; }