Code

pointer check, to prevent rapid crash on pdf/ps-export
authortheadib <theadib@users.sourceforge.net>
Wed, 20 Feb 2008 22:14:48 +0000 (22:14 +0000)
committertheadib <theadib@users.sourceforge.net>
Wed, 20 Feb 2008 22:14:48 +0000 (22:14 +0000)
src/extension/prefdialog.cpp

index 5a3204967a239ffd45d1bbd400df00fca2c2e3f8..280269ec277910d55b2783babbf1aa3ddd03f9c9 100644 (file)
@@ -33,7 +33,7 @@ namespace Extension {
     \param  name  Name of the Extension who's dialog this is
     \param  help  The help string for the extension (NULL if none)
     \param  controls  The extension specific widgets in the dialog
     \param  name  Name of the Extension who's dialog this is
     \param  help  The help string for the extension (NULL if none)
     \param  controls  The extension specific widgets in the dialog
-    
+
     This function initializes the dialog with the name of the extension
     in the title.  It adds a few buttons and sets up handlers for
     them.  It also places the passed in widgets into the dialog.
     This function initializes the dialog with the name of the extension
     in the title.  It adds a few buttons and sets up handlers for
     them.  It also places the passed in widgets into the dialog.
@@ -68,8 +68,8 @@ PrefDialog::PrefDialog (Glib::ustring name, gchar const * help, Gtk::Widget * co
     _button_ok->set_use_stock(true);
     set_default_response(Gtk::RESPONSE_OK);
     _button_ok->grab_focus();
     _button_ok->set_use_stock(true);
     set_default_response(Gtk::RESPONSE_OK);
     _button_ok->grab_focus();
-    
-    // If we're working with an effect that can be live and 
+
+    // If we're working with an effect that can be live and
     // the dialog can be pinned, put those options in too
     if (_exEnv != NULL) {
         if (_param_preview == NULL) {
     // the dialog can be pinned, put those options in too
     if (_exEnv != NULL) {
         if (_param_preview == NULL) {
@@ -173,7 +173,10 @@ PrefDialog::on_response (int signal) {
     }
 
     if (signal == Gtk::RESPONSE_OK) {
     }
 
     if (signal == Gtk::RESPONSE_OK) {
-               _effect->effect(SP_ACTIVE_DESKTOP);
+        if(_effect != NULL)
+        {
+            _effect->effect(SP_ACTIVE_DESKTOP);
+        }
     }
        if (signal == Gtk::RESPONSE_CANCEL) {
                // close the dialog
     }
        if (signal == Gtk::RESPONSE_CANCEL) {
                // close the dialog