summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 35d683c)
raw | patch | inline | side by side (parent: 35d683c)
author | gouldtj <gouldtj@users.sourceforge.net> | |
Wed, 29 Mar 2006 05:44:15 +0000 (05:44 +0000) | ||
committer | gouldtj <gouldtj@users.sourceforge.net> | |
Wed, 29 Mar 2006 05:44:15 +0000 (05:44 +0000) |
Additional protections against not finding an extension in the database
src/ui/dialog/extension-editor.cpp | patch | blob | history |
index d642805c18f5a132bd001676b146b3c04bc8b83c..49f8c92dcbc401f4fde2cab449fedac1ddc76126 100644 (file)
_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();
}
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();
}
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();
}