--- trunk/gnome-sudoku/src/lib/saver.py 2009/03/28 00:47:14 8910
+++ trunk/gnome-sudoku/src/lib/saver.py 2009/03/28 02:05:39 8911
@@ -211,8 +211,22 @@
except:
print 'Warning: could not read file',f
else:
- jar['saved_at']=os.stat(f)[8]
- games.append(jar)
+ if self.is_valid(jar):
+ jar['saved_at']=os.stat(f)[8]
+ games.append(jar)
+ else:
+ print 'Warning: malformed save game',f
return games
-
+
+ def is_valid (self, jar):
+ virgin = jar['game'].split('\n')[0].replace(' ','')
+ played = jar['game'].split('\n')[1].replace(' ','')
+
+ if len(virgin) != 81 or len(played) != 81:
+ return False
+
+ if not virgin.isdigit() or not played.isdigit():
+ return False
+
+ return True