From 56b91b1a41b22d4b1e095f770a09f7b6f237bb86 Mon Sep 17 00:00:00 2001 From: shatty Date: Tue, 17 Feb 2004 09:56:53 +0000 Subject: [PATCH] streaming detection based on SEEK_END, tested and working in MediaPlayer for ogg streams from SoundPlay live encoder (oggenc) git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6614 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/add-ons/media/plugins/ogg/OggReaderPlugin.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/add-ons/media/plugins/ogg/OggReaderPlugin.cpp b/src/add-ons/media/plugins/ogg/OggReaderPlugin.cpp index a4a5efa0f3..a5f4581efe 100644 --- a/src/add-ons/media/plugins/ogg/OggReaderPlugin.cpp +++ b/src/add-ons/media/plugins/ogg/OggReaderPlugin.cpp @@ -184,6 +184,15 @@ get_seekable(BDataIO * data) // really screwed return 0; } + // next try to seek to the end of the stream (absolutely) + if (seekable->Seek(0, SEEK_END) < 0) { + return 0; + } + // then seek back to where we started + if (seekable->Seek(current, SEEK_SET) < 0) { + // really screwed + return 0; + } return seekable; }