Lost GLCD-Logo at Playback, Was Is cStatus::OsdChannel called from cEITScanner::Process

Message ID 1124901062.11881.22.camel@wopr.deltab.de
State New
Headers

Commit Message

Andreas Brachold Aug. 24, 2005, 4:31 p.m. UTC
  Hi,

Am Mittwoch, den 24.08.2005, 17:38 +0200 schrieb Klaus Schmidinger:
> cEITScanner::Process() calls Device->SwitchChannel() which eventually
> leads to a call to cStatus::MsgChannelSwitch(). So yes, this is the case.
> 
> But that's not a call from a "background process" - it's done from the
> main thread.
> 
> The same could happen if a recording starts on the primary device
> while a replay is going on.
> 

Thanks for this statement, now I know, where I must search.

attached a patch, so that swichting from channels during playback are
ignored now by Graphlcd Plugin

Andreas
  

Patch

Index: display.c
===================================================================
--- display.c	(Revision 21)
+++ display.c	(Arbeitskopie)
@@ -484,7 +484,9 @@ 
 
 void cGraphLCDDisplay::SetChannel(int ChannelNumber)
 {
-	if (ChannelNumber == 0)
+	if (ChannelNumber == 0 
+        ||  State == Replay 
+        || (State == Menu && LastState == Replay))
 		return;
 
 	mutex.Lock();