aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--shell/ChangeLog5
-rw-r--r--shell/e-shell-startup-wizard.c6
2 files changed, 11 insertions, 0 deletions
diff --git a/shell/ChangeLog b/shell/ChangeLog
index 8567caf2ad..dd6dd8568a 100644
--- a/shell/ChangeLog
+++ b/shell/ChangeLog
@@ -1,3 +1,8 @@
+2004-01-08 Not Zed <NotZed@Ximian.com>
+
+ * e-shell-startup-wizard.c (get_intelligent_importers): check that
+ we found any importers before deferencing the pointer.
+
2004-01-05 ERDI Gergo <cactus@cactus.rulez.org>
* e-task-bar.c (init): Create a separate label to the left of the
diff --git a/shell/e-shell-startup-wizard.c b/shell/e-shell-startup-wizard.c
index ac6d6a4770..9e04cbf7bd 100644
--- a/shell/e-shell-startup-wizard.c
+++ b/shell/e-shell-startup-wizard.c
@@ -524,6 +524,12 @@ get_intelligent_importers (void)
query = g_strdup_printf ("repo_ids.has ('IDL:GNOME/Evolution/IntelligentImporter:%s'", BASE_VERSION);
info_list = bonobo_activation_query (query, NULL, &ev);
g_free (query);
+
+ if (BONOBO_EX (&ev) || info_list == CORBA_OBJECT_NIL) {
+ g_warning ("Cannot find importers -- %s", BONOBO_EX_REPOID (&ev));
+ CORBA_exception_free (&ev);
+ return NULL;
+ }
CORBA_exception_free (&ev);
for (i = 0; i < info_list->_length; i++) {