From e1d1e3bc747d1fef403ff02a85b46ea259932f59 Mon Sep 17 00:00:00 2001 From: reimar Date: Wed, 31 Aug 2005 13:04:22 +0000 Subject: [PATCH] Fix move playlists (control must be returned to mplayer.c, with the demuxer returning the real URL as a packet). git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@16327 b3059339-0415-0410-9bf9-f77b7e298cf2 --- libmpdemux/demux_mov.c | 2 +- libmpdemux/demuxer.c | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/libmpdemux/demux_mov.c b/libmpdemux/demux_mov.c index 7ab60ea315..1ba42c7ad7 100644 --- a/libmpdemux/demux_mov.c +++ b/libmpdemux/demux_mov.c @@ -506,7 +506,7 @@ skip_chunk: free(priv); if ((flags==5) || (flags==7)) // reference & header sent - return DEMUXER_TYPE_MOV; + return DEMUXER_TYPE_PLAYLIST; if(flags==1) mp_msg(MSGT_DEMUX,MSGL_WARN,"MOV: missing data (mdat) chunk! Maybe broken file...\n"); diff --git a/libmpdemux/demuxer.c b/libmpdemux/demuxer.c index 8f9c0cf35a..505291a8e7 100644 --- a/libmpdemux/demuxer.c +++ b/libmpdemux/demuxer.c @@ -629,6 +629,8 @@ for (i = 0; (demuxer_desc = demuxer_list[i]); i++) { file_format = fformat; break; } else { + if (fformat == DEMUXER_TYPE_PLAYLIST) + return demuxer; // handled in mplayer.c // Format changed after check, recurse free_demuxer(demuxer); demuxer=demux_open_stream(stream, fformat, force, @@ -672,6 +674,8 @@ for (i = 0; (demuxer_desc = demuxer_list[i]); i++) { file_format = fformat; break; } else { + if (fformat == DEMUXER_TYPE_PLAYLIST) + return demuxer; // handled in mplayer.c // Format changed after check, recurse free_demuxer(demuxer); demuxer=demux_open_stream(stream, fformat, force,