From 58d050c9563dda95204c17b87ad10464a8863dd7 Mon Sep 17 00:00:00 2001 From: Ed Page Date: Mon, 27 Apr 2009 18:19:57 -0500 Subject: [PATCH] Fixing some load/save issues with filebackend --- src/file_backend.py | 7 +++++++ src/toolbox.py | 11 ++++++----- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/src/file_backend.py b/src/file_backend.py index 954e38e..4d80fe5 100644 --- a/src/file_backend.py +++ b/src/file_backend.py @@ -23,12 +23,19 @@ class FileBackend(object): pickle.dump(state, pickleFile) def load(self): + state = { + "projects": {}, + "items": {}, + "locations": {}, + } try: with open(self._filename, "rb") as pickleFile: state = pickle.load(pickleFile) except IOError, e: if e.errno != 2: raise + except EOFError, e: + pass self._projects = state["projects"] self._items = state["items"] self._locations = state["locations"] diff --git a/src/toolbox.py b/src/toolbox.py index e21ca82..92cfeff 100644 --- a/src/toolbox.py +++ b/src/toolbox.py @@ -6,6 +6,10 @@ from xml.dom import minidom import datetime +class NonExistent(object): + pass + + class Optional(object): """ Taglines: @@ -41,9 +45,6 @@ class Optional(object): 'Blacksheep' """ - class NonExistent(object): - pass - def __init__(self, value = NonExistent): self._value = value @@ -51,10 +52,10 @@ class Optional(object): self._value = value def clear(self): - self._value = self.NonExistent + self._value = NonExistent def is_good(self): - return self._value is not self.NonExistent + return self._value is not NonExistent def get_nothrow(self, default = None): return self._value if self.is_good() else default -- 1.7.9.5