diff --git a/gnome-sudoku/src/lib/saver.py b/gnome-sudoku/src/lib/saver.py
index e68894f..8e15f04 100644
--- a/gnome-sudoku/src/lib/saver.py
+++ b/gnome-sudoku/src/lib/saver.py
@@ -47,7 +47,7 @@ def super_setattr (obj, attr, val):
 
 def jar_game (ui):
     jar = {} # what we will pickle
-    ui.timer.finish_timing()
+    ui.timer.mark_timing()
     jar['game'] = ui.gsd.grid.to_string()
     jar['trackers'] = ui.gsd.trackers
     jar['tracking'] = ui.gsd.__trackers_tracking__
diff --git a/gnome-sudoku/src/lib/timer.py b/gnome-sudoku/src/lib/timer.py
index dfaa4fa..464743e 100644
--- a/gnome-sudoku/src/lib/timer.py
+++ b/gnome-sudoku/src/lib/timer.py
@@ -131,14 +131,19 @@ class ActiveTimer (gobject.GObject):
         self.__absolute_start_time__ = time.time()
         self.resume_timing()
 
-    def finish_timing (self):
+    def mark_timing(self):
         self.pause_timing()
-        self.timer_running = False
         if self.active_time < 1:
             self.active_time = 1
         # dirty hack: never let total time be less than active time
         if self.active_time > self.total_time:
             self.total_time = self.active_time
+        self.resume_timing()
+        
+    @simple_debug
+    def finish_timing (self):
+        self.mark_timing()
+        self.timer_running = False
 
     def active_time_string (self):
         return format_time(self.active_time)
