aboutsummaryrefslogtreecommitdiffstats
path: root/shell
diff options
context:
space:
mode:
authorEttore Perazzoli <ettore@src.gnome.org>2001-10-18 04:26:32 +0800
committerEttore Perazzoli <ettore@src.gnome.org>2001-10-18 04:26:32 +0800
commit77886091c3d2e63225f5861044bf6cd283ab0592 (patch)
tree31e79d018bb7d783383b0add82494d91a57a5bd3 /shell
parent8b135a085a76aa89777162b3c0daf30ca49fc96e (diff)
downloadgsoc2013-evolution-77886091c3d2e63225f5861044bf6cd283ab0592.tar
gsoc2013-evolution-77886091c3d2e63225f5861044bf6cd283ab0592.tar.gz
gsoc2013-evolution-77886091c3d2e63225f5861044bf6cd283ab0592.tar.bz2
gsoc2013-evolution-77886091c3d2e63225f5861044bf6cd283ab0592.tar.lz
gsoc2013-evolution-77886091c3d2e63225f5861044bf6cd283ab0592.tar.xz
gsoc2013-evolution-77886091c3d2e63225f5861044bf6cd283ab0592.tar.zst
gsoc2013-evolution-77886091c3d2e63225f5861044bf6cd283ab0592.zip
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
Diffstat (limited to 'shell')
-rw-r--r--shell/ChangeLog5
-rw-r--r--shell/e-shell.c12
2 files changed, 15 insertions, 2 deletions
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 <ettore@ximian.com>
+
+ * e-shell.c (set_owner_on_components): Re-set the owner on the
+ component that raised OldOwnerHasDied.
+
2001-10-15 Iain Holmes <iain@ximian.com>
* 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.) */
+ }
+ }
}
}