Udo Richter wrote:
Klaus Schmidinger wrote:
Are you sure? ACTIVITYTIMEOUT is 60 seconds, so wouldn't your change just avoid the calls until 60 seconds after the last user activity?
Hmm, you're right. Its not a test on Setup.MinUserInactivity * 60. My patch would just avoid these calls the usual 60 seconds after a key press.
However, I still think that Active() should be called only if VDR is really willing to shut down, and not while running normally. Or is Active() supposed to also delay any housekeeping tasks?
Since cPlugin::Active() is only intended to be a means of preventing VDR from shutting down, I'd say you're right - it should only be called when VDR is actually trying to shut down.
The attached patch makes it call cPluginManager::Active() only if it really wants to shut down, and if there is actually an option for plugins to delay the shutdown (i.e. this is not a forced shutdown).
If cPluginManager::Active() returns 'true' once, it waits for SHUTDOWNRETRY minutes before trying again.
Please give this a try and let me know whether it works.
Klaus