From cee00fe152b5879c036e329adc7feb2e922f7caa Mon Sep 17 00:00:00 2001 From: gouldtj Date: Wed, 29 Mar 2006 05:44:15 +0000 Subject: [PATCH] r11141@tres: ted | 2006-03-27 21:51:34 -0800 Additional protections against not finding an extension in the database --- src/ui/dialog/extension-editor.cpp | 26 +++++++++++++++++--------- 1 file changed, 17 insertions(+), 9 deletions(-) diff --git a/src/ui/dialog/extension-editor.cpp b/src/ui/dialog/extension-editor.cpp index d642805c1..49f8c92dc 100644 --- a/src/ui/dialog/extension-editor.cpp +++ b/src/ui/dialog/extension-editor.cpp @@ -148,13 +148,17 @@ ExtensionEditor::on_pagelist_selection_changed (void) _notebook_help.remove(); _notebook_params.remove(); + Inkscape::Extension::Extension * ext = Inkscape::Extension::db.get(id.c_str()); + /* Make sure we have all the widges */ Gtk::Widget * info; info = row[_page_list_columns._col_info]; if (info == NULL) { - info = Inkscape::Extension::db.get(id.c_str())->get_info_widget(); - row[_page_list_columns._col_info] = info; - info->reference(); + if (ext != NULL) { + info = ext->get_info_widget(); + row[_page_list_columns._col_info] = info; + info->reference(); + } } else { info->unparent(); } @@ -162,9 +166,11 @@ ExtensionEditor::on_pagelist_selection_changed (void) Gtk::Widget * help; help = row[_page_list_columns._col_help]; if (help == NULL) { - help = Inkscape::Extension::db.get(id.c_str())->get_help_widget(); - row[_page_list_columns._col_help] = help; - help->reference(); + if (ext != NULL) { + help = ext->get_help_widget(); + row[_page_list_columns._col_help] = help; + help->reference(); + } } else { help->unparent(); } @@ -172,9 +178,11 @@ ExtensionEditor::on_pagelist_selection_changed (void) Gtk::Widget * params; params = row[_page_list_columns._col_params]; if (params == NULL) { - params = Inkscape::Extension::db.get(id.c_str())->get_params_widget(); - row[_page_list_columns._col_params] = params; - params->reference(); + if (ext != NULL) { + params = ext->get_params_widget(); + row[_page_list_columns._col_params] = params; + params->reference(); + } } else { params->unparent(); } -- 2.30.2