From 0c7eeca673a4b1bda346b472badabcb67f8c2908 Mon Sep 17 00:00:00 2001 From: Felix Domke Date: Mon, 23 Mar 2009 00:32:10 +0100 Subject: [PATCH] handle empty bouquets --- lib/python/Components/EpgList.py | 4 ++++ lib/python/Screens/InfoBarGenerics.py | 15 ++++++++++++--- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/lib/python/Components/EpgList.py b/lib/python/Components/EpgList.py index 2494ca0..fa60400 100644 --- a/lib/python/Components/EpgList.py +++ b/lib/python/Components/EpgList.py @@ -297,6 +297,8 @@ class EPGList(HTMLComponent, GUIComponent): return x and x[1] def moveToService(self,serviceref): + if not serviceref: + return index = 0 refstr = serviceref.toString() for x in self.list: @@ -306,6 +308,8 @@ class EPGList(HTMLComponent, GUIComponent): index += 1 def moveToEventId(self, eventId): + if not eventId: + return index = 0 for x in self.list: if x[1] == eventId: diff --git a/lib/python/Screens/InfoBarGenerics.py b/lib/python/Screens/InfoBarGenerics.py index 8cb2569..9b5f62c 100644 --- a/lib/python/Screens/InfoBarGenerics.py +++ b/lib/python/Screens/InfoBarGenerics.py @@ -398,23 +398,32 @@ class SimpleServicelist: self.current = 0 def selectService(self, service): - self.current = 0 - while self.services[self.current].ref != service: - self.current += 1 + if not self.length: + self.current = -1 + else: + self.current = 0 + while self.services[self.current].ref != service: + self.current += 1 def nextService(self): + if not self.length: + return if self.current+1 < self.length: self.current += 1 else: self.current = 0 def prevService(self): + if not self.length: + return if self.current-1 > -1: self.current -= 1 else: self.current = self.length - 1 def currentService(self): + if not self.length: + return None return self.services[self.current] class InfoBarEPG: -- 2.7.4