--- RecordTimer.py.orig	2016-01-13 22:01:01.961925062 +0000
+++ RecordTimer.py	2016-01-14 01:51:35.418889191 +0000
@@ -789,7 +789,18 @@
 		# did this timer reached the last state?
 		if w.state < RecordTimerEntry.StateEnded:
 			# no, sort it into active list
-			insort(self.timer_list, w)
+# GML: There seems to be a bug(?) in the TimerSanityCheck code when two
+#      timers start at the same time. If the second on the list finishes
+#      first then fakeRecService.start(True) produces an abnormal result
+#      and a non-existent conflict may be reported.
+# http://www.world-of-satellite.com/showthread.php?49866-TimerSanityCheck-can-report-a-failure-when-it-should-be-OK
+#      Putting the timer to finish first ahead in the list seems to let
+#      things work, so lets do that here...just for the timer_list
+# See also timer.py
+#      Make timer order based on start then stop time only
+#			insort(self.timer_list, w)
+			self.timer_list.append(w)
+			self.timer_list.sort(key=lambda s: "%011d:%011d"%(s.begin, s.end))
 		else:
 			# yes. Process repeated, and re-add.
 			if w.repeated:
