]> git.itanic.dy.fi Git - emerge-timer/commitdiff
Don't crash if we can't calculate current emerge time
authorEsko Kokkonen <esko.kokkonen@gmail.com>
Tue, 29 Nov 2011 16:31:42 +0000 (18:31 +0200)
committerEsko Kokkonen <esko.kokkonen@gmail.com>
Tue, 29 Nov 2011 16:31:42 +0000 (18:31 +0200)
If we encounter an emerge time which for some reason we cannot
calculate (or something weird happens) printout only 'unknown'

emerge-timer.py

index aa15f2ffad5ad2d5d519050fb9610b89f11713f6..4fc6c2dedc8493e9c334a85b7cb4b8723c70752a 100755 (executable)
@@ -80,18 +80,22 @@ class package:
             print(give_time(self.average_time())),
 
         else:
-            print("unknown"),
+            print(green_start + "unknown" + color_stop),
 
         print("\n\t " + '-'*45),
 
-        finish_time = self.average_time() - self.emerge_time
-
         print("\n\t time to finish:"),
 
-        if finish_time > 0:
-            print(give_time(finish_time))
+        if type(self.emerge_time) != str:
+
+            finish_time = self.average_time() - self.emerge_time
+
+            if finish_time > 0:
+                print(give_time(finish_time))
+            else:
+                print(green_start + "any time now" + color_stop)
         else:
-            print(green_start + "any time now" + color_stop)
+            print(green_start + "unknown" + color_stop)
         print
 
 
@@ -173,6 +177,10 @@ def give_time(time, nocolor=False):
         green_start = ""
         color_stop = ""
 
+    if type(time) == str:
+        return(green_start + "unknown" + color_stop)
+
+
     days = time/(3600*24)
     hours = (days - int(days))*24
     minutes = (hours - int(hours))*60