changeset 571:cb8cc5b4d6be

Don't crash if saving a level fails
author Neil Muller <drnlmuller@gmail.com>
date Tue, 20 Nov 2012 23:24:16 +0200
parents 1b720cf4d730
children 84616c7db2e7
files mamba/habitats/editor.py
diffstat 1 files changed, 9 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/mamba/habitats/editor.py	Tue Nov 20 23:41:10 2012 +0200
+++ b/mamba/habitats/editor.py	Tue Nov 20 23:24:16 2012 +0200
@@ -320,10 +320,15 @@
         if message:
             self.display_dialog(message)
             return True
-        self.level.save_level('user_levels', is_user_dir=True)
-        self.refresh_display()
-        message = MessageBox((300, 300),
-                'Success!\nYou have saved a user level')
+        try:
+            self.level.save_level('user_levels', is_user_dir=True)
+            self.refresh_display()
+            message = MessageBox((300, 300),
+                    'Success!\nYou have saved a user level')
+        except Exception, e:
+            # Catch-all if things go wrong
+            message = MessageBox((300, 300),
+                    "Disaster! Level not saved:\n%s" % e)
         self.display_dialog(message)
         return True