diff options
author | Ettore Perazzoli <ettore@src.gnome.org> | 2001-08-03 15:16:08 +0800 |
---|---|---|
committer | Ettore Perazzoli <ettore@src.gnome.org> | 2001-08-03 15:16:08 +0800 |
commit | bb98a04df3793d70bdab48d23091668d2f8aba86 (patch) | |
tree | 80936ef467db86249393f6a3aa95d4367fe86735 /shell | |
parent | 384fbf44ff24c0f981b41083fad51ede9bff7bde (diff) | |
download | gsoc2013-evolution-bb98a04df3793d70bdab48d23091668d2f8aba86.tar.gz gsoc2013-evolution-bb98a04df3793d70bdab48d23091668d2f8aba86.tar.zst gsoc2013-evolution-bb98a04df3793d70bdab48d23091668d2f8aba86.zip |
[Fixes #4663, startup crash.]
* e-shell.c (e_shell_construct): Make sure the pointer to the db
object is CORBA_OBJECT_NIL if `bonobo_get_object()' raises an
exception.
svn path=/trunk/; revision=11606
Diffstat (limited to 'shell')
-rw-r--r-- | shell/ChangeLog | 10 | ||||
-rw-r--r-- | shell/e-shell.c | 6 |
2 files changed, 16 insertions, 0 deletions
diff --git a/shell/ChangeLog b/shell/ChangeLog index d3fd2a1252..697bd21fcf 100644 --- a/shell/ChangeLog +++ b/shell/ChangeLog @@ -1,5 +1,15 @@ 2001-08-03 Ettore Perazzoli <ettore@ximian.com> + [Fixes #4663, startup crash.] + + * e-shell.c (e_shell_construct): Make sure the pointer to the db + object is CORBA_OBJECT_NIL if `bonobo_get_object()' raises an + exception. + +2001-08-03 Ettore Perazzoli <ettore@ximian.com> + + [Fixes #3818, crash when going off-line.] + * e-shell-offline-handler.c (component_info_free): Also call `PortableServer_POA_deactivate_object()' on the progress listener object so it gets deactivated. diff --git a/shell/e-shell.c b/shell/e-shell.c index 1b3dcbbde8..a27c3cb42b 100644 --- a/shell/e-shell.c +++ b/shell/e-shell.c @@ -822,6 +822,12 @@ e_shell_construct (EShell *shell, if (BONOBO_EX (&ev) || priv->db == CORBA_OBJECT_NIL) { g_warning ("Cannot access Bonobo/ConfigDatabase on wombat:"); + + /* Make sure the DB object is NIL so we don't mess up + (`bonobo_get_object()' might return an undefined value in + the case of an exception). */ + priv->db = CORBA_OBJECT_NIL; + CORBA_exception_free (&ev); return FALSE; } |