From 51a6fc1a8f6369014d91801ffb88aa2fa6f65cd4 Mon Sep 17 00:00:00 2001 From: Ettore Perazzoli Date: Wed, 4 Dec 2002 18:05:41 +0000 Subject: (component_free): Only invoke wait_for_corba_object_to_die on components that are out-of-proc. svn path=/trunk/; revision=19006 --- shell/ChangeLog | 5 +++++ shell/e-component-registry.c | 7 +++++-- 2 files changed, 10 insertions(+), 2 deletions(-) (limited to 'shell') diff --git a/shell/ChangeLog b/shell/ChangeLog index f078402c8a..d570b7b0f4 100644 --- a/shell/ChangeLog +++ b/shell/ChangeLog @@ -1,3 +1,8 @@ +2002-12-04 Ettore Perazzoli + + * e-component-registry.c (component_free): Only invoke + wait_for_corba_object_to_die on components that are out-of-proc. + 2002-11-27 Not Zed * main.c (show_development_warning): changed to use a gtkdialog diff --git a/shell/e-component-registry.c b/shell/e-component-registry.c index fde3ef7e5d..2a69a974f7 100644 --- a/shell/e-component-registry.c +++ b/shell/e-component-registry.c @@ -1,7 +1,7 @@ /* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */ /* e-component-registry.c * - * Copyright (C) 2000 Ximian, Inc. + * Copyright (C) 2000, 2001, 2002 Ximian, Inc. * * This program is free software; you can redistribute it and/or * modify it under the terms of version 2 of the GNU General Public @@ -145,7 +145,10 @@ component_free (Component *component) g_object_unref (component->client); - wait_for_corba_object_to_die ((Bonobo_Unknown) corba_shell_component, component->id); + /* If the component is out-of-proc, wait for the process to die first. */ + if (bonobo_object (ORBit_small_get_servant (corba_shell_component)) == NULL) + wait_for_corba_object_to_die ((Bonobo_Unknown) corba_shell_component, component->id); + CORBA_Object_release (corba_shell_component, &ev); e_free_string_list (component->folder_type_names); -- cgit v1.2.3