From 8b8b89a129901c71ad6f9fc0829b77fc6b13c698 Mon Sep 17 00:00:00 2001 From: micha-bbg Date: Mon, 14 Nov 2011 21:59:48 +0000 Subject: [PATCH] *Fix LED/VFD indication in time shift (r1828) - Changes resulted to sometimes crash neutrino, this patch fixes it. git-svn-id: file:///home/bas/coolstream_public_svn/THIRDPARTY/applications/neutrino-beta@1846 e54a6e83-5905-42d5-8d5c-058d10e6a962 --- src/driver/vfd.cpp | 7 ++++--- src/gui/infoviewer.cpp | 3 +++ 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/driver/vfd.cpp b/src/driver/vfd.cpp index 23254754c..15d8eafa0 100644 --- a/src/driver/vfd.cpp +++ b/src/driver/vfd.cpp @@ -295,7 +295,8 @@ void CVFD::showTime(bool force) } } - if (CRecordManager::getInstance()->RecordingStatus()) { + int tmp_recstatus = CNeutrinoApp::getInstance()->recordingstatus; + if (tmp_recstatus) { if(clearClock) { clearClock = 0; if(has_lcd) @@ -307,13 +308,13 @@ void CVFD::showTime(bool force) ShowIcon(VFD_ICON_CAM1, true); setled(true);//on } - } else if(clearClock || (recstatus != CRecordManager::getInstance()->RecordingStatus())) { // in case icon ON after record stopped + } else if(clearClock || (recstatus != tmp_recstatus)) { // in case icon ON after record stopped clearClock = 0; if(has_lcd) ShowIcon(VFD_ICON_CAM1, false); setled(); } - recstatus = CRecordManager::getInstance()->RecordingStatus(); + recstatus = tmp_recstatus; } void CVFD::showRCLock(int /*duration*/) diff --git a/src/gui/infoviewer.cpp b/src/gui/infoviewer.cpp index 01dffda07..f3b9593b8 100644 --- a/src/gui/infoviewer.cpp +++ b/src/gui/infoviewer.cpp @@ -909,6 +909,9 @@ void CInfoViewer::loop(int fadeValue, bool show_dot ,bool fadeIn) virtual_zap_mode = true; res = messages_return::cancel_all; hideIt = true; + } else if ((msg == NeutrinoMessages::EVT_RECORDMODE) && + (CMoviePlayerGui::getInstance().timeshift) && (CRecordManager::getInstance()->GetRecordCount() == 1)) { + res = CNeutrinoApp::getInstance()->handleMsg(msg, data); } else if (!fileplay && !CMoviePlayerGui::getInstance().timeshift) { CNeutrinoApp *neutrino = CNeutrinoApp::getInstance (); if ((msg == (neutrino_msg_t) g_settings.key_quickzap_up) || (msg == (neutrino_msg_t) g_settings.key_quickzap_down) || (msg == CRCInput::RC_0) || (msg == NeutrinoMessages::SHOW_INFOBAR)) {