Added missing CORBA_Object_duplicate() when storing the shell
object pointer in ::set_owner. svn path=/trunk/; revision=3826
This commit is contained in:
@ -1,3 +1,8 @@
|
||||
2000-06-30 Ettore Perazzoli <ettore@helixcode.com>
|
||||
|
||||
* evolution-shell-component.c (impl_ShellComponent_set_owner):
|
||||
Duplicate the object before storing it, you doofus.
|
||||
|
||||
2000-06-30 Ettore Perazzoli <ettore@helixcode.com>
|
||||
|
||||
* evolution-shell-component.c (impl_ShellComponent_unset_owner):
|
||||
|
||||
@ -127,6 +127,7 @@ impl_ShellComponent_set_owner (PortableServer_Servant servant,
|
||||
BonoboObject *bonobo_object;
|
||||
EvolutionShellComponent *shell_component;
|
||||
EvolutionShellComponentPrivate *priv;
|
||||
Evolution_Shell shell_duplicate;
|
||||
|
||||
bonobo_object = bonobo_object_from_servant (servant);
|
||||
shell_component = EVOLUTION_SHELL_COMPONENT (bonobo_object);
|
||||
@ -138,11 +139,12 @@ impl_ShellComponent_set_owner (PortableServer_Servant servant,
|
||||
return;
|
||||
}
|
||||
|
||||
priv->owner_client = evolution_shell_client_new (shell);
|
||||
shell_duplicate = CORBA_Object_duplicate (shell, ev);
|
||||
|
||||
g_print ("%s -- %p\n", __FUNCTION__, shell);
|
||||
|
||||
gtk_signal_emit (GTK_OBJECT (shell_component), signals[OWNER_SET], priv->owner_client);
|
||||
if (ev->_major == CORBA_NO_EXCEPTION) {
|
||||
priv->owner_client = evolution_shell_client_new (shell_duplicate);
|
||||
gtk_signal_emit (GTK_OBJECT (shell_component), signals[OWNER_SET], priv->owner_client);
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
|
||||
Reference in New Issue
Block a user