diff --git a/shell/model/Friends.py b/shell/model/Friends.py index b90f9d93..4a2298c5 100644 --- a/shell/model/Friends.py +++ b/shell/model/Friends.py @@ -5,6 +5,7 @@ import gobject from model.BuddyModel import BuddyModel from sugar import env +import logging class Friends(gobject.GObject): __gsignals__ = { @@ -45,12 +46,16 @@ class Friends(gobject.GObject): def load(self): cp = ConfigParser() - if cp.read([self._path]): - for name in cp.sections(): - buddy = BuddyModel() - buddy.set_name(name) - buddy.set_color(cp.get(name, 'color')) - self.add_friend(buddy) + try: + success = cp.read([self._path]) + if success: + for name in cp.sections(): + buddy = BuddyModel() + buddy.set_name(name) + buddy.set_color(cp.get(name, 'color')) + self.add_friend(buddy) + except Exception, exc: + logging.error("Error parsing friends file: %s" % exc) def save(self): cp = ConfigParser() diff --git a/sugar/simulator.py b/sugar/simulator.py index b46b9c3c..271d5ed5 100644 --- a/sugar/simulator.py +++ b/sugar/simulator.py @@ -99,7 +99,10 @@ class Bot: self._pservice = PresenceService.get_instance() - gtk.main() + try: + gtk.main() + except KeyboardInterrupt: + pass def add_action(self, action, minutes): self._timeline.add(action, minutes)