From 6db6a6824b4647bb689713f4a4f83c17f5621a30 Mon Sep 17 00:00:00 2001 From: shatty Date: Thu, 19 Feb 2004 05:26:42 +0000 Subject: [PATCH] realign to page on sync loss git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6645 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/add-ons/media/plugins/ogg/OggSeekable.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/add-ons/media/plugins/ogg/OggSeekable.cpp b/src/add-ons/media/plugins/ogg/OggSeekable.cpp index ebfaf36808..ec69e6b9dd 100644 --- a/src/add-ons/media/plugins/ogg/OggSeekable.cpp +++ b/src/add-ons/media/plugins/ogg/OggSeekable.cpp @@ -155,6 +155,7 @@ OggSeekable::ReadPage(ogg_page * page, int read_size) } BAutolock autolock(fPositionLock); // align to page boundary +align: int offset; while ((offset = ogg_sync_pageseek(&fSync, page)) <= 0) { if (offset == 0) { @@ -204,9 +205,8 @@ OggSeekable::ReadPage(ogg_page * page, int read_size) } if (result == -1) { TRACE("OggSeekable::ReadPage (%llu)\n", fPosition); - TRACE("OggSeekable::ReadPage: ogg_sync_pageout: not synced!\n"); - debugger("lost sync"); - return B_ERROR; + TRACE("OggSeekable::ReadPage: ogg_sync_pageout: not synced... attempt resync\n"); + goto align; } if (ogg_page_version(page) != 0) { TRACE("OggSeekable::ReadPage (%llu)\n", fPosition);