summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhschang <chang@dev3>2018-08-27 06:53:01 (GMT)
committerhschang <chang@dev3>2018-08-27 06:53:01 (GMT)
commit83b8f1c6f9357e41c34020251038b0cdeab76cb7 (patch)
tree5fb13832d059eac87cac7d299841ae4d2bdda79c
parent5e0c1dbc3610b703f59fa798748b1676c0f356cc (diff)
Fix crash for 4097 service.
-rw-r--r--lib/python/Screens/EpgSelection.py7
-rw-r--r--lib/python/Screens/EventView.py2
-rw-r--r--lib/python/Screens/TimerEntry.py2
3 files changed, 7 insertions, 4 deletions
diff --git a/lib/python/Screens/EpgSelection.py b/lib/python/Screens/EpgSelection.py
index f8edba1..94b16a4 100644
--- a/lib/python/Screens/EpgSelection.py
+++ b/lib/python/Screens/EpgSelection.py
@@ -226,7 +226,7 @@ class EPGSelection(Screen):
cur = self["list"].getCurrent()
event = cur[0]
serviceref = cur[1]
- if event is None:
+ if event is None or serviceref.getType() != eServiceReference.idDVB:
return
eventid = event.getEventId()
refstr = serviceref.ref.toString()
@@ -352,13 +352,13 @@ class EPGSelection(Screen):
self["key_red"].setText("Zap")
self.key_red_choice = self.ZAP
- if event is None:
+ serviceref = cur[1]
+ if event is None or serviceref.getType() != eServiceReference.idDVB:
if self.key_green_choice != self.EMPTY:
self["key_green"].setText("")
self.key_green_choice = self.EMPTY
return
- serviceref = cur[1]
eventid = event.getEventId()
refstr = serviceref.ref.toString()
isRecordEvent = False
@@ -366,6 +366,7 @@ class EPGSelection(Screen):
if timer.eit == eventid and timer.service_ref.ref.toString() == refstr:
isRecordEvent = True
break
+
if isRecordEvent and self.key_green_choice != self.REMOVE_TIMER:
self["key_green"].setText(_("Remove timer"))
self.key_green_choice = self.REMOVE_TIMER
diff --git a/lib/python/Screens/EventView.py b/lib/python/Screens/EventView.py
index cced3ce..4a39678 100644
--- a/lib/python/Screens/EventView.py
+++ b/lib/python/Screens/EventView.py
@@ -113,7 +113,7 @@ class EventViewBase:
def setService(self, service):
self.currentService=service
- if self.isRecording:
+ if self.isRecording and (self.currentService.ref.type == eServiceReference.idDVB):
self["channel"].setText(_("Recording"))
else:
name = self.currentService.getServiceName()
diff --git a/lib/python/Screens/TimerEntry.py b/lib/python/Screens/TimerEntry.py
index 1d40547..3308b81 100644
--- a/lib/python/Screens/TimerEntry.py
+++ b/lib/python/Screens/TimerEntry.py
@@ -138,6 +138,8 @@ class TimerEntry(Screen, ConfigListScreen):
servicename = str(self.timer.service_ref.getServiceName())
except:
pass
+ if not servicename:
+ servicename = "N/A"
self.timerentry_service_ref = self.timer.service_ref
self.timerentry_service = ConfigSelection([servicename])