Code

prevent inkscape from crashing in case of malformed SVG, still need method to inform...
authortheAdib <theAdib@users.sourceforge.net>
Sun, 25 Jan 2009 21:20:52 +0000 (21:20 +0000)
committertheAdib <theAdib@users.sourceforge.net>
Sun, 25 Jan 2009 21:20:52 +0000 (21:20 +0000)
src/sp-object.cpp

index 0153fedc2e84d22bddecd9d6bd657c9c8acb199e..1e7c5f2fe33b3d02c780a369bcc053f67a650e43 100644 (file)
@@ -1295,8 +1295,20 @@ SPObject::updateDisplay(SPCtx *ctx, unsigned int flags)
         }
     }
 
-    if (((SPObjectClass *) G_OBJECT_GET_CLASS(this))->update)
-        ((SPObjectClass *) G_OBJECT_GET_CLASS(this))->update(this, ctx, flags);
+    try
+    {
+        if (((SPObjectClass *) G_OBJECT_GET_CLASS(this))->update)
+            ((SPObjectClass *) G_OBJECT_GET_CLASS(this))->update(this, ctx, flags);
+    }
+    catch(...)
+    {
+        /** \todo 
+        * in case of catching an exception we need to inform the user somehow that the document is corrupted
+        * maybe by implementing an document flag documentOk
+        * or by a modal error dialog
+        */
+        g_warning("SPObject::updateDisplay(SPCtx *ctx, unsigned int flags) : throw in ((SPObjectClass *) G_OBJECT_GET_CLASS(this))->update(this, ctx, flags);");
+    }
 
     update_in_progress --;
 }