From b1e3eb3628bdd91211e19658032d6fc6430569ef Mon Sep 17 00:00:00 2001 From: Erik Zandvliet Date: Tue, 22 Jul 2014 15:28:03 +0200 Subject: [PATCH] Fix opening new pages on time for windows --- src/output/output.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/output/output.cpp b/src/output/output.cpp index 6f6efdc2..51ec990d 100644 --- a/src/output/output.cpp +++ b/src/output/output.cpp @@ -597,6 +597,18 @@ namespace Mist { DEBUG_MSG(DLVL_DEVEL, "Empty packet on track %u - could not reload, dropping track.", nxt.tid); } }else{ + loadPageForKey(nxt.tid, ++nxtKeyNum[nxt.tid]); + nxt.offset = 0; + if (curPages.count(nxt.tid) && curPages[nxt.tid].mapped){ + if (getDTSCTime(curPages[nxt.tid].mapped, nxt.offset) < nxt.time){ + DEBUG_MSG(DLVL_DEVEL, "Time going backwards in track %u - dropping track.", nxt.tid); + }else{ + nxt.time = getDTSCTime(curPages[nxt.tid].mapped, nxt.offset); + buffer.insert(nxt); + } + prepareNext(); + return; + } DEBUG_MSG(DLVL_DEVEL, "Empty packet on track %u - dropping track.", nxt.tid); } prepareNext();