From a0e89c35a5bcaafdd6aa3a4faf1563fbc92a9447 Mon Sep 17 00:00:00 2001 From: Rodrigo Moya Date: Mon, 15 Jul 2002 19:22:36 +0000 Subject: no need to convert the value returned by e_folder_tree_get_folder to a 2002-07-14 Rodrigo Moya * evolution-storage.c (impl_Storage_getFolderAtPath): no need to convert the value returned by e_folder_tree_get_folder to a GNOME_Evolution_Folder, since it already is, and duplicate it before returning. svn path=/trunk/; revision=17461 --- shell/evolution-storage.c | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) (limited to 'shell/evolution-storage.c') diff --git a/shell/evolution-storage.c b/shell/evolution-storage.c index b3ea8089bb..b8468790e0 100644 --- a/shell/evolution-storage.c +++ b/shell/evolution-storage.c @@ -280,23 +280,32 @@ impl_Storage_getFolderAtPath (PortableServer_Servant servant, BonoboObject *bonobo_object; EvolutionStorage *storage; EvolutionStoragePrivate *priv; - EFolder *folder; GNOME_Evolution_Folder *corba_folder; + GNOME_Evolution_Folder *return_value; bonobo_object = bonobo_object_from_servant (servant); storage = EVOLUTION_STORAGE (bonobo_object); priv = storage->priv; - folder = e_folder_tree_get_folder (priv->folder_tree, path); - if (folder == NULL) { + corba_folder = e_folder_tree_get_folder (priv->folder_tree, path); + if (corba_folder == NULL) { CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_GNOME_Evolution_Storage_NotFound, NULL); return NULL; } - corba_folder = GNOME_Evolution_Folder__alloc (); - e_folder_to_corba (folder, "", corba_folder); - - return corba_folder; + /* duplicate CORBA structure */ + return_value = GNOME_Evolution_Folder__alloc (); + return_value->type = CORBA_string_dup (corba_folder->type); + return_value->description = CORBA_string_dup (corba_folder->description); + return_value->displayName = CORBA_string_dup (corba_folder->displayName); + return_value->physicalUri = CORBA_string_dup (corba_folder->physicalUri); + return_value->evolutionUri = CORBA_string_dup (corba_folder->evolutionUri); + return_value->customIconName = CORBA_string_dup (corba_folder->customIconName); + return_value->unreadCount = corba_folder->unreadCount; + return_value->canSyncOffline = corba_folder->canSyncOffline; + return_value->sortingPriority = corba_folder->sortingPriority; + + return return_value; } static void -- cgit v1.2.3