From 78cbbb4c49c76558eea3397d7fd0f90978248210 Mon Sep 17 00:00:00 2001 From: wm4 Date: Sun, 16 Nov 2014 18:13:41 +0100 Subject: demux_cue: use stream_peek() This could cause probing failures with unseekable streams. (Although I'm not perfectly sure why; seeking back should work in this particular case.) --- demux/demux_cue.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) (limited to 'demux/demux_cue.c') diff --git a/demux/demux_cue.c b/demux/demux_cue.c index 2f2e6fca46..bc1b727f5f 100644 --- a/demux/demux_cue.c +++ b/demux/demux_cue.c @@ -35,13 +35,9 @@ static int try_open_file(struct demuxer *demuxer, enum demux_check check) { struct stream *s = demuxer->stream; if (check >= DEMUX_CHECK_UNSAFE) { - char buf[PROBE_SIZE]; - int len = stream_read(s, buf, sizeof(buf)); - if (len <= 0) + bstr d = stream_peek(s, PROBE_SIZE); + if (d.len < 1 || !mp_probe_cue(d)) return -1; - if (!mp_probe_cue((struct bstr) { buf, len })) - return -1; - stream_seek(s, 0); } demuxer->file_contents = stream_read_complete(s, demuxer, 1000000); if (demuxer->file_contents.start == NULL) -- cgit v1.2.3