fixes bug #380
authorStefan Pluecken <stefan.pluecken@multimedia-labs.de>
Thu, 4 Feb 2010 13:04:20 +0000 (14:04 +0100)
committerStefan Pluecken <stefan.pluecken@multimedia-labs.de>
Thu, 4 Feb 2010 13:05:24 +0000 (14:05 +0100)
pip is'n available in every state of e2, so don't try to get the status if it's not available

lib/python/Screens/ServiceStopScreen.py

index 7f0d26a..628a93a 100644 (file)
@@ -6,16 +6,26 @@ class ServiceStopScreen:
                        self.session
                except:
                        print "[ServiceStopScreen] ERROR: no self.session set"
-                       
+
                self.oldref = None
                self.onClose.append(self.__onClose)
                
+       def pipAvailable(self):
+               # pip isn't available in every state of e2
+               try:
+                       self.session.pipshown
+                       pipavailable = True
+               except:
+                       pipavailable = False
+               return pipavailable
+               
        def stopService(self):          
                self.oldref = self.session.nav.getCurrentlyPlayingServiceReference()
                self.session.nav.stopService()
-               if self.session.pipshown: # try to disable pip
-                       self.session.pipshown = False
-                       del self.session.pip
+               if self.pipAvailable():
+                       if self.session.pipshown: # try to disable pip
+                               self.session.pipshown = False
+                               del self.session.pip
                
        def __onClose(self):
                self.session.nav.playService(self.oldref)