diff options
| author | Stefan Pluecken <stefan.pluecken@multimedia-labs.de> | 2010-03-31 23:48:38 +0200 |
|---|---|---|
| committer | Stefan Pluecken <stefan.pluecken@multimedia-labs.de> | 2010-03-31 23:48:38 +0200 |
| commit | 3ba3cde02a677e536283fb8cf126f0f80d6c77b9 (patch) | |
| tree | 2d5cf00e0218ddf96d6bcd1c1aa6cb89efeb409f /lib/python | |
| parent | 6c69f8d469e17ce1f07775574526b76a2edf60c8 (diff) | |
| download | enigma2-3ba3cde02a677e536283fb8cf126f0f80d6c77b9.tar.gz enigma2-3ba3cde02a677e536283fb8cf126f0f80d6c77b9.zip | |
fixes bug #436
write a magic 0 into /sys/module/dvb_core/parameters/dvb_shutdown_timeout before doing a service scan and restore the old value afterwards
Diffstat (limited to 'lib/python')
| -rw-r--r-- | lib/python/Screens/ServiceScan.py | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/lib/python/Screens/ServiceScan.py b/lib/python/Screens/ServiceScan.py index 6ee35b84..1fd32e06 100644 --- a/lib/python/Screens/ServiceScan.py +++ b/lib/python/Screens/ServiceScan.py @@ -32,10 +32,25 @@ class ServiceScan(Screen): def ok(self): print "ok" if self["scan"].isDone(): + self.resetTimeout() self.close() def cancel(self): + self.resetTimeout() self.close() + + def setTimeout(self): + try: + self.oldtimeoutvalue = open("/sys/module/dvb_core/parameters/dvb_shutdown_timeout", "r").readline() + open("/sys/module/dvb_core/parameters/dvb_shutdown_timeout", "w").write("0") + except: + print "[info] no /sys/module/dvb_core/parameters/dvb_shutdown_timeout available" + + def resetTimeout(self): + try: + open("/sys/module/dvb_core/parameters/dvb_shutdown_timeout", "w").write(self.oldtimeoutvalue) + except: + print "[info] no /sys/module/dvb_core/parameters/dvb_shutdown_timeout available" def __init__(self, session, scanList): Screen.__init__(self, session) @@ -58,7 +73,9 @@ class ServiceScan(Screen): "ok": self.ok, "cancel": self.cancel }) - + + self.setTimeout() + self.onFirstExecBegin.append(self.doServiceScan) def doServiceScan(self): |
