From ed99a96ad7574937dcd0419e703f5f264947e9ed Mon Sep 17 00:00:00 2001
From: Richard <peper03@yahoo.com>
Date: Wed, 5 Dec 2012 22:30:08 +0100
Subject: [PATCH] Moved resetting of still frame timer to before call to
WaitForPlayer to avoid the second of two sequential (but
physically separated) stills being skipped.
---
mythtv/libs/libmythtv/DVD/dvdringbuffer.cpp | 18 +++++++++---------
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/mythtv/libs/libmythtv/DVD/dvdringbuffer.cpp b/mythtv/libs/libmythtv/DVD/dvdringbuffer.cpp
index cb9b1af..c9b8e5f 100644
a
|
b
|
int DVDRingBuffer::safe_read(void *data, uint sz) |
648 | 648 | .arg(m_title).arg(still).arg(m_part).arg(m_titleParts)); |
649 | 649 | } |
650 | 650 | |
651 | | // wait unless it is a transition from one normal video cell to |
652 | | // another or the same menu id |
653 | | if (((m_still != m_lastStill) || (m_title != m_lastTitle)) && |
654 | | !((m_title == 0 && m_lastTitle == 0) && |
655 | | (m_part == m_lastPart))) |
656 | | { |
657 | | WaitForPlayer(); |
658 | | } |
659 | | |
660 | 651 | // if the new cell is a still frame, reset the timer |
661 | 652 | if (m_parent) |
662 | 653 | { |
… |
… |
int DVDRingBuffer::safe_read(void *data, uint sz) |
666 | 657 | m_parent->SetStillFrameTimeout(0); |
667 | 658 | } |
668 | 659 | |
| 660 | // wait unless it is a transition from one normal video cell to |
| 661 | // another or the same menu id |
| 662 | if (((m_still != m_lastStill) || (m_title != m_lastTitle)) && |
| 663 | !((m_title == 0 && m_lastTitle == 0) && |
| 664 | (m_part == m_lastPart))) |
| 665 | { |
| 666 | WaitForPlayer(); |
| 667 | } |
| 668 | |
669 | 669 | // clear menus/still frame selections |
670 | 670 | m_lastvobid = m_vobid; |
671 | 671 | m_lastcellid = m_cellid; |