# HG changeset patch # User uau # Date 1179105834 0 # Node ID ab885f9284447fec7d12891d86d579743e0b7914 # Parent 30c61fe726bf2d326dddb91d033f822cac897040 Fix double free() in demux_asf.c If demux_open_asf() fails it frees the demuxer->priv field before returning. Then demuxer.c calls demux_close_asf() which frees the field again. Fix by removing the free() in demux_open_asf(). diff -r 30c61fe726bf -r ab885f928444 libmpdemux/demux_asf.c --- a/libmpdemux/demux_asf.c Mon May 14 01:23:52 2007 +0000 +++ b/libmpdemux/demux_asf.c Mon May 14 01:23:54 2007 +0000 @@ -701,10 +701,8 @@ //---- ASF header: if(!asf) return NULL; init_priv(asf); - if (!read_asf_header(demuxer,asf)) { - free(asf); + if (!read_asf_header(demuxer,asf)) return NULL; - } stream_reset(demuxer->stream); stream_seek(demuxer->stream,demuxer->movi_start); // demuxer->idx_pos=0;