--- RecordTimer.py.orig	2016-01-15 10:09:59.496737422 +0000
+++ RecordTimer.py	2016-03-13 16:28:15.681783914 +0000
@@ -429,6 +429,10 @@
 							if not bouquetlist is None:
 								while True:
 									bouquet = bouquetlist.getNext()
+#GML:5 Add a get-out clause when searching the bouquets (1 of 2)
+									if bouquet.type < 0:    # Reached end of bouquets
+										print "[GML: RecordTimer] Reached end of bouquets..??"
+										break
 									if bouquet.flags & eServiceReference.isDirectory:
 										ChannelSelectionInstance.clearPath()
 										ChannelSelectionInstance.setRoot(bouquet)
@@ -637,6 +641,10 @@
 				if not bouquetlist is None:
 					while True:
 						bouquet = bouquetlist.getNext()
+#GML:5 Add a get-out clause when searching the bouquets (2 of 2)
+						if bouquet.type < 0:    # Reached end of bouquets
+							print "[GML: RecordTimer] Reached end of bouquets..??"
+							break
 						if bouquet.flags & eServiceReference.isDirectory:
 							ChannelSelectionInstance.clearPath()
 							ChannelSelectionInstance.setRoot(bouquet)
