Mercurial > mplayer.hg
diff libmpdemux/demux_demuxers.c @ 33237:a8619bfabf84
Add a alloc_demuxer function that ensures all the critical stuff is
initialized and use it also in demux_demuxers.c.
This fixes the OSD counter being stuck at 0.
author | reimar |
---|---|
date | Sun, 24 Apr 2011 23:06:38 +0000 |
parents | 3ba59e647e58 |
children | b09a5d9ff050 |
line wrap: on
line diff
--- a/libmpdemux/demux_demuxers.c Sun Apr 24 21:32:36 2011 +0000 +++ b/libmpdemux/demux_demuxers.c Sun Apr 24 23:06:38 2011 +0000 @@ -35,11 +35,10 @@ extern const demuxer_desc_t demuxer_desc_demuxers; demuxer_t* new_demuxers_demuxer(demuxer_t* vd, demuxer_t* ad, demuxer_t* sd) { - demuxer_t* ret; + // Video is the most important :-) + demuxer_t* ret = alloc_demuxer(vd->stream, DEMUXER_TYPE_DEMUXERS, vd->filename); dd_priv_t* priv; - ret = calloc(1,sizeof(demuxer_t)); - priv = malloc(sizeof(dd_priv_t)); priv->vd = vd; priv->ad = ad; @@ -47,8 +46,6 @@ ret->priv = priv; ret->type = ret->file_format = DEMUXER_TYPE_DEMUXERS; - // Video is the most important :-) - ret->stream = vd->stream; ret->seekable = vd->seekable && ad->seekable && sd->seekable; ret->video = vd->video;