[vdr] vdr-1.5.1 & problems with the new shutdown code

Udo Richter udo_richter at gmx.de
Sun Mar 4 20:31:16 CET 2007


Rolf Ahrenberg wrote:
> On Sun, 4 Mar 2007, Udo Richter wrote:
> Mar  4 18:31:14 xxx vdr: [6740] LastActivity: Never
> Mar  4 18:31:14 xxx vdr: [6740] ActiveTimeout:   2104
> Mar  4 18:31:14 xxx vdr: [6740] Retry:  Never
> 
> ... goes on and on and no shutdown attempts...

Found it! And, more important: Blame Klaus! :)

Klaus changed the meaning of cRemote::LastActivity() before integrating 
it, and missed to adapt one call to it, the cRemote::LastActivity() > 
ACTIVITYTIMEOUT check before doing housekeeping. And after startup, 
cRemote::LastActivity() will return 0, blocking all housekeeping. 
Correct is (time(NULL) - cRemote::LastActivity()) > ACTIVITYTIMEOUT, as 
in the attached patch.

Cheers,

Udo

-------------- next part --------------
Index: vdr.c
===================================================================
--- vdr.c	(Revision 874)
+++ vdr.c	(Arbeitskopie)
@@ -1162,7 +1162,7 @@
               ShutdownHandler.countdown.Cancel();
            }
 
-        if (!Interact && !cRecordControls::Active() && !cCutter::Active() && !Interface->HasSVDRPConnection() && cRemote::LastActivity() > ACTIVITYTIMEOUT) {
+        if (!Interact && !cRecordControls::Active() && !cCutter::Active() && !Interface->HasSVDRPConnection() && (time(NULL) - cRemote::LastActivity()) > ACTIVITYTIMEOUT) {
            // Handle housekeeping tasks
 
            // Shutdown:


More information about the vdr mailing list