From 77886091c3d2e63225f5861044bf6cd283ab0592 Mon Sep 17 00:00:00 2001 From: Ettore Perazzoli Date: Wed, 17 Oct 2001 20:26:32 +0000 Subject: Re-set the owner on the component that raised OldOwnerHasDied. * e-shell.c (set_owner_on_components): Re-set the owner on the component that raised OldOwnerHasDied. svn path=/trunk/; revision=13730 --- shell/ChangeLog | 5 +++++ shell/e-shell.c | 12 ++++++++++-- 2 files changed, 15 insertions(+), 2 deletions(-) (limited to 'shell') diff --git a/shell/ChangeLog b/shell/ChangeLog index 6819243d8f..1ac38b58e9 100644 --- a/shell/ChangeLog +++ b/shell/ChangeLog @@ -1,3 +1,8 @@ +2001-10-17 Ettore Perazzoli + + * e-shell.c (set_owner_on_components): Re-set the owner on the + component that raised OldOwnerHasDied. + 2001-10-15 Iain Holmes * e-shell-startup-wizard.c (prepare_importer_page): Stop the prepare diff --git a/shell/e-shell.c b/shell/e-shell.c index 6d793926af..6e97a6ff01 100644 --- a/shell/e-shell.c +++ b/shell/e-shell.c @@ -698,8 +698,16 @@ set_owner_on_components (EShell *shell) g_warning ("Error setting owner on component %s -- %s", id, evolution_shell_component_result_to_string (result)); - if (result == EVOLUTION_SHELL_COMPONENT_OLDOWNERHASDIED) - e_component_registry_restart_component (priv->component_registry, id); + if (result == EVOLUTION_SHELL_COMPONENT_OLDOWNERHASDIED) { + component_client = e_component_registry_restart_component (priv->component_registry, id); + result = evolution_shell_component_client_set_owner (component_client, corba_shell, + local_directory); + if (result != EVOLUTION_SHELL_COMPONENT_OK) { + g_warning ("Error re-setting owner on component %s -- %s", + id, evolution_shell_component_result_to_string (result)); + /* (At this point, we give up.) */ + } + } } } -- cgit v1.2.3