[evolution-patches] patch for bug #73926



hi,

the attached patch fixes
http://bugzilla.ximian.com/show_bug.cgi?id=73926

Changes are made in camel-groupwise-store.[ch]
		    camel-groupwise-folder.c
I've changed the name_hash to contain the full name of the folder.

Thanks,
Vivek Jain	 
Index: ChangeLog
===================================================================
RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/ChangeLog,v
retrieving revision 1.40
diff -u -p -r1.40 ChangeLog
--- ChangeLog	18 Mar 2005 06:01:55 -0000	1.40
+++ ChangeLog	22 Mar 2005 13:26:09 -0000
@@ -1,3 +1,29 @@
+2005-03-22  Vivek Jain <jvivek novell com>
+
+	**Fixes bug ,, 
+	* camel-groupwise-store.c :
+	(gw_get_path) : removed
+	(groupwise_get_folder_info): Changed the name hash. Now
+	it stores full names of the folders
+	(groupwise_rename_folder):
+	(groupwise_delete_folder):
+	(groupwise_create_folder):
+	(groupwise_get_folder) :
+	use full name of the folder to perform any operation, when 
+	folder name is to be taken from name_hash
+	(groupwise_build_folder_info): we don't need to call gw_get_path
+	use full name passed directly
+	
+	* camel-groupwise-folder.c : 
+	(groupwise_transfer_messages_to): 
+	(groupwise_append_message):
+	(groupwise_expunge):
+	(groupwise_sync):
+	(groupwise_folder_get_message):
+	(groupwise_folder_get_message):
+	(groupwise_refresh_info):
+	use full_name in container id lookup 
+
 2005-03-18  Vivek Jain <jvivek novell com>
 	
 	**Fixes bug #73458
Index: camel-groupwise-store.c
===================================================================
RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-store.c,v
retrieving revision 1.41
diff -u -p -r1.41 camel-groupwise-store.c
--- camel-groupwise-store.c	10 Mar 2005 06:59:14 -0000	1.41
+++ camel-groupwise-store.c	22 Mar 2005 13:26:10 -0000
@@ -481,8 +481,7 @@ groupwise_get_folder (CamelStore *store,
 	CamelFolder *folder ;
 	CamelGroupwiseSummary *summary;
 	char *time_string = NULL;
-	char *storage_path, *folder_dir, *temp_str,*container_id ;
-	const char *temp_name;
+	char *storage_path, *folder_dir, *container_id ;
 	EGwConnectionStatus status ;
 	GList *list = NULL ;
 	GSList *slist = NULL, *sl ;
@@ -512,16 +511,8 @@ groupwise_get_folder (CamelStore *store,
 		return folder;
 	}
 	
-	temp_name = folder_name ;
-	temp_str = strrchr(folder_name,'/') ;
-	if(temp_str == NULL) {
-		container_id = 	g_strdup (g_hash_table_lookup (priv->name_hash, g_strdup(folder_name))) ;
-	}
-	else {
-		temp_str++ ;
-		container_id = 	g_strdup (g_hash_table_lookup (priv->name_hash, g_strdup(temp_str))) ;
-	}
-
+	container_id = 	g_strdup (g_hash_table_lookup (priv->name_hash, g_strdup(folder_name))) ;
+	
 	folder = camel_gw_folder_new (store, folder_name, folder_dir, ex) ;
 	if (!folder) {
 		CAMEL_SERVICE_UNLOCK (gw_store, connect_lock) ;
@@ -550,7 +541,7 @@ groupwise_get_folder (CamelStore *store,
 		t_str = g_strdup (time_string);
 		/* FIXME send the time stamp which the server sends */
 		status = e_gw_connection_get_quick_messages (priv->cnc, container_id,
-				"peek recipient distribution attachments subject created status",
+				"peek recipient distribution attachments subject created recipientStatus status",
 				&t_str, "New", NULL, NULL, -1, &slist) ;
 		if (status != E_GW_CONNECTION_STATUS_OK) {
 			//camel_exception_set (ex, CAMEL_EXCEPTION_SERVICE_INVALID, _("Authentication failed"));
@@ -578,7 +569,7 @@ groupwise_get_folder (CamelStore *store,
 		t_str = g_strdup (time_string);
 		/* FIXME send the time stamp which the server sends */
 		status = e_gw_connection_get_quick_messages (priv->cnc, container_id,
-					"peek recipient distribution attachments subject created status",
+					"peek recipient distribution attachments subject created recipientStatus status",
 					&t_str, "Modified", NULL, NULL, -1, &slist) ; 
 		g_free (t_str), t_str = NULL;
 		if (status != E_GW_CONNECTION_STATUS_OK) {
@@ -590,7 +581,6 @@ groupwise_get_folder (CamelStore *store,
 			camel_object_ref (folder) ;
 			camel_folder_summary_save(folder->summary) ;
 			return folder ;
-			//return NULL ;
 		}
 
 		for ( sl = slist ; sl != NULL; sl = sl->next) {
@@ -678,7 +668,7 @@ static CamelFolderInfo *
 groupwise_build_folder_info(CamelGroupwiseStore *gw_store, const char *parent_name, const char *folder_name)
 {
 	CamelURL *url ;
-	const char *name, *full_name ;
+	const char *name;
 	CamelFolderInfo *fi ;
 	CamelGroupwiseStorePrivate *priv = gw_store->priv ;
 
@@ -687,21 +677,13 @@ groupwise_build_folder_info(CamelGroupwi
 	fi->unread = 0 ;
 	fi->total = 0 ;
 
-	
-	
 	if (parent_name)
-		if (strlen(parent_name) > 0) {
-			full_name = gw_get_path (gw_store, parent_name) ;
-			fi->full_name = g_strconcat(full_name,"/",g_strdup(folder_name), NULL) ;
-		} else
-			fi->full_name = g_strdup (folder_name) ;
-	else {
-		full_name = gw_get_path (gw_store, folder_name) ;
-		if (full_name)
-			fi->full_name = g_strdup (full_name) ;
+		if (strlen(parent_name) > 0) 
+			fi->full_name = g_strconcat(parent_name,"/",g_strdup(folder_name), NULL) ;
 		else
-			fi->full_name = g_strdup(folder_name) ;
-	}
+			fi->full_name = g_strdup (folder_name) ;
+	else 
+		fi->full_name = g_strdup(folder_name) ;
 
 	url = camel_url_new(priv->base_url,NULL) ;
 	g_free(url->path) ;
@@ -775,7 +757,7 @@ groupwise_get_folder_info (CamelStore *s
 	GPtrArray *folders;
 	GList *folder_list = NULL, *temp_list = NULL ;
 	const char *url, *top_folder, *temp_url ;
-	char *temp_str = NULL, *folder_real = NULL ;
+	char  *folder_real = NULL ;
 	CamelFolderInfo *info = NULL ;
 
 	CAMEL_SERVICE_LOCK (store, connect_lock) ;
@@ -796,12 +778,7 @@ groupwise_get_folder_info (CamelStore *s
 		top_folder = "folders" ;
 		top = "" ;
 	} else {
-		temp_str = strrchr (top, '/') ;
-		if (temp_str) {
-			temp_str++ ;
-			top_folder = g_hash_table_lookup (priv->name_hash, temp_str) ;	
-		} else
-			top_folder = g_hash_table_lookup (priv->name_hash, top) ;
+		top_folder = g_hash_table_lookup (priv->name_hash, top) ;
 		/* 'top' is a valid path, but doesnt have a container id
 		 *  return NULL */
 		if (!top_folder)
@@ -843,14 +820,12 @@ groupwise_get_folder_info (CamelStore *s
 
 		/*id_hash returns the name for a given container id*/
 		g_hash_table_insert (priv->id_hash, g_strdup(id), g_strdup(name)) ; 
-		/*name_hash returns the container id given the name */
-		g_hash_table_insert (priv->name_hash, g_strdup(name), g_strdup(id)) ;
 		/*parent_hash returns the parent container id, given an id*/
 		g_hash_table_insert (priv->parent_hash, g_strdup(id), g_strdup(parent)) ;
 
 	}
 
-	
+
 	for (; folder_list != NULL; folder_list = g_list_next(folder_list)) {
 		CamelFolderInfo *fi;
 		const char *parent ;
@@ -858,6 +833,7 @@ groupwise_get_folder_info (CamelStore *s
 		EGwContainer *container = E_GW_CONTAINER (folder_list->data) ;
 		EGwContainerType type = e_gw_container_get_container_type (container) ;
 		const char *name = e_gw_container_get_name (container) ;
+		const char *id = e_gw_container_get_id (container);
 
 		if (e_gw_container_is_root (container)) 
 			continue ;
@@ -868,23 +844,23 @@ groupwise_get_folder_info (CamelStore *s
 
 		if (type == E_GW_CONTAINER_TYPE_INBOX)
 			fi->flags |= CAMEL_FOLDER_TYPE_INBOX;
-/*		if (type == E_GW_CONTAINER_TYPE_TRASH)
-			fi->flags |= CAMEL_FOLDER_TYPE_TRASH ;*/
+		/*		if (type == E_GW_CONTAINER_TYPE_TRASH)
+				fi->flags |= CAMEL_FOLDER_TYPE_TRASH ;*/
 
 		if ( (type == E_GW_CONTAINER_TYPE_INBOX) ||
-		     (type == E_GW_CONTAINER_TYPE_OUTBOX) ||
-		     (type == E_GW_CONTAINER_TYPE_DOCUMENTS) ||
-		     (type == E_GW_CONTAINER_TYPE_QUERY) ||
-		     (type == E_GW_CONTAINER_TYPE_CHECKLIST) ||
-		     (type == E_GW_CONTAINER_TYPE_DRAFT) ||
-		     (type == E_GW_CONTAINER_TYPE_CABINET) ||
-		     (type == E_GW_CONTAINER_TYPE_TRASH) ) 
+				(type == E_GW_CONTAINER_TYPE_OUTBOX) ||
+				(type == E_GW_CONTAINER_TYPE_DOCUMENTS) ||
+				(type == E_GW_CONTAINER_TYPE_QUERY) ||
+				(type == E_GW_CONTAINER_TYPE_CHECKLIST) ||
+				(type == E_GW_CONTAINER_TYPE_DRAFT) ||
+				(type == E_GW_CONTAINER_TYPE_CABINET) ||
+				(type == E_GW_CONTAINER_TYPE_TRASH) ) 
 			fi->flags |= CAMEL_FOLDER_SYSTEM ;
 		/*
-		  parent_hash contains the "parent id <-> container id" combination. So we form
-		  the path for the full name in camelfolder info by looking up the hash table until
-		  NULL is found
-		*/
+		   parent_hash contains the "parent id <-> container id" combination. So we form
+		   the path for the full name in camelfolder info by looking up the hash table until
+		   NULL is found
+		   */
 
 		parent = e_gw_container_get_parent_id (container) ;
 		par_name = g_hash_table_lookup (priv->id_hash, parent) ;
@@ -914,6 +890,9 @@ groupwise_get_folder_info (CamelStore *s
 			fi->name =  fi->full_name = g_strdup (name);
 			fi->uri = g_strconcat (url, "", name, NULL) ;
 		}
+		
+		/*name_hash returns the container id given the full name */
+		g_hash_table_insert (priv->name_hash, g_strdup(fi->full_name), g_strdup(id)) ;
 
 		if (e_gw_container_get_is_shared_to_me (container))
                         fi->flags |= CAMEL_FOLDER_SHARED_TO_ME;
@@ -934,14 +913,8 @@ groupwise_get_folder_info (CamelStore *s
 	}
 	g_free ((char *)url) ;
 	if ( (top != NULL) && (folders->len == 0)) {
-		/*temp_str already contains the value if any*/
-		if (temp_str) {
-			CAMEL_SERVICE_UNLOCK (store, connect_lock);
-			return groupwise_build_folder_info (groupwise_store, NULL, temp_str ) ;
-		} else {
-			CAMEL_SERVICE_UNLOCK (store, connect_lock);
-			return groupwise_build_folder_info (groupwise_store, NULL, top ) ;
-		}
+		CAMEL_SERVICE_UNLOCK (store, connect_lock);
+		return groupwise_build_folder_info (groupwise_store, NULL, top ) ;
 	}
 	info = camel_folder_info_build (folders, top, '/', TRUE) ;
 	g_ptr_array_free (folders, TRUE) ;
@@ -962,7 +935,7 @@ groupwise_create_folder(CamelStore *stor
 	CamelGroupwiseStore *groupwise_store = CAMEL_GROUPWISE_STORE (store);
 	CamelGroupwiseStorePrivate  *priv = groupwise_store->priv;
 	CamelFolderInfo *root = NULL ;
-	char *parent_id , *child_container_id, *temp_parent = NULL;
+	char *parent_id , *child_container_id;
 	int status;
 	
 	if (((CamelOfflineStore *) store)->state == CAMEL_OFFLINE_STORE_NETWORK_UNAVAIL) {
@@ -973,14 +946,9 @@ groupwise_create_folder(CamelStore *stor
 	if(parent_name == NULL)
 		parent_name = "" ;
 
-	if (parent_name && (strlen(parent_name) > 0) ) {
-		temp_parent = strrchr (parent_name,'/') ;
-		if (temp_parent && temp_parent[0]) {
-			temp_parent++ ;
-			parent_id = g_hash_table_lookup (priv->name_hash, g_strdup(temp_parent)) ;
-		} else
-			parent_id = g_hash_table_lookup (priv->name_hash, g_strdup(parent_name)) ;
-	} else
+	if (parent_name && (strlen(parent_name) > 0) ) 
+		parent_id = g_hash_table_lookup (priv->name_hash, g_strdup(parent_name)) ;
+	else
 		parent_id = "" ;
 
 	if (!E_IS_GW_CONNECTION( priv->cnc)) {
@@ -996,7 +964,7 @@ groupwise_create_folder(CamelStore *stor
 		camel_store_summary_save((CamelStoreSummary *)groupwise_store->summary);
 
 		g_hash_table_insert (priv->id_hash, g_strdup(child_container_id), g_strdup(folder_name)) ; 
-		g_hash_table_insert (priv->name_hash, g_strdup(folder_name), g_strdup(child_container_id)) ;
+		g_hash_table_insert (priv->name_hash, g_strdup(root->full_name), g_strdup(child_container_id)) ;
 		g_hash_table_insert (priv->parent_hash, g_strdup(child_container_id), g_strdup(parent_id)) ;
 
 		camel_object_trigger_event (CAMEL_OBJECT (store), "folder_created", root);
@@ -1013,7 +981,6 @@ groupwise_delete_folder(CamelStore *stor
 	CamelGroupwiseStore *groupwise_store = CAMEL_GROUPWISE_STORE (store);
 	CamelGroupwiseStorePrivate  *priv = groupwise_store->priv;
 	EGwConnectionStatus status ;
-	const char *name = NULL;
 	const char * container ; 
 	
 	if (((CamelOfflineStore *) store)->state == CAMEL_OFFLINE_STORE_NETWORK_UNAVAIL) {
@@ -1021,26 +988,18 @@ groupwise_delete_folder(CamelStore *stor
 		return;
 	}
 	
-	name = strrchr (folder_name, '/') ;
-	if (name) {
-		name++ ;
-		container = g_hash_table_lookup (priv->name_hash, name) ;
-	} else
-		container = g_hash_table_lookup (priv->name_hash, folder_name) ;
+	container = g_hash_table_lookup (priv->name_hash, folder_name) ;
 
 	CAMEL_SERVICE_LOCK (store, connect_lock) ;
-	
+
 	status = e_gw_connection_remove_item (priv->cnc, container, container) ;
 
 	if (status == E_GW_CONNECTION_STATUS_OK) {
 		groupwise_forget_folder(groupwise_store,folder_name,ex) ;
-		
+
 		g_hash_table_remove (priv->id_hash, container) ;
-		
-		if (name)
-			g_hash_table_remove (priv->name_hash, name) ;
-		else 
-			g_hash_table_remove (priv->name_hash, folder_name) ;
+
+		g_hash_table_remove (priv->name_hash, folder_name) ;
 		
 		g_hash_table_remove (priv->parent_hash, container) ;
 	}
@@ -1060,20 +1019,14 @@ groupwise_rename_folder(CamelStore *stor
 	CamelGroupwiseStorePrivate  *priv = groupwise_store->priv;
 	char *oldpath, *newpath, *storepath ;
 	const char *container_id ;
-	char *temp_old = NULL, *temp_new = NULL ;
+	char *temp_new = NULL ;
 	
 	if (((CamelOfflineStore *) store)->state == CAMEL_OFFLINE_STORE_NETWORK_UNAVAIL) {
 		camel_exception_set (ex, CAMEL_EXCEPTION_SYSTEM, _("Cannot rename GroupWise folders in offline mode."));
 		return;
 	}
 	CAMEL_SERVICE_LOCK (store, connect_lock) ;
-	temp_old = strrchr (old_name,'/') ;
-	if (temp_old) {
-		temp_old++ ;
-		container_id = camel_groupwise_store_container_id_lookup (groupwise_store, temp_old) ;
-	} else
-		container_id = camel_groupwise_store_container_id_lookup (groupwise_store, old_name) ;
-
+	container_id = camel_groupwise_store_container_id_lookup (groupwise_store, old_name) ;
 	temp_new = strrchr (new_name, '/') ;
 	if (temp_new) 
 		temp_new++ ;
@@ -1088,13 +1041,8 @@ groupwise_rename_folder(CamelStore *stor
 	}
 
 	g_hash_table_replace (priv->id_hash, g_strdup(container_id), g_strdup(temp_new)) ;
-
-        g_hash_table_insert (priv->name_hash, g_strdup(temp_new), g_strdup(container_id)) ;
-	
-	if (temp_old)
-		g_hash_table_remove (priv->name_hash, g_strdup(temp_old)) ;
-	else
-		g_hash_table_remove (priv->name_hash, g_strdup(old_name)) ;
+	g_hash_table_insert (priv->name_hash, g_strdup(new_name), g_strdup(container_id)) ;
+	g_hash_table_remove (priv->name_hash, g_strdup(old_name)) ;
 	/*FIXME:Update all the id in the parent_hash*/
 
 	storepath = g_strdup_printf ("%s/folders", priv->storage_path) ;
@@ -1202,34 +1150,6 @@ char *
 storage_path_lookup (CamelGroupwiseStorePrivate *priv)
 {
 	return priv->storage_path ;
-}
-
-const char *
-gw_get_path (CamelGroupwiseStore *gw_store, const char *folder_name)
-{
-	CamelGroupwiseStorePrivate *priv = gw_store->priv ;
-
-	const char *str = g_strdup (folder_name) ;
-	gchar *container_id = NULL, *temp_parent = NULL, *temp = NULL ;
-
-
-	container_id = g_hash_table_lookup (priv->name_hash, folder_name) ;
-
-	if (container_id)
-		temp_parent = g_hash_table_lookup (priv->parent_hash, container_id) ;
-	else 
-		temp_parent = NULL ;
-	while (temp_parent) {
-		temp = g_hash_table_lookup (priv->id_hash, temp_parent ) ;
-		if (temp == NULL) {
-			break ;
-		}	
-		str = g_strconcat ( temp, "/", str, NULL) ;
-
-		temp_parent = g_hash_table_lookup (priv->parent_hash, temp_parent) ;
-	} 
-
-	return str ;
 }
 
 static void
Index: camel-groupwise-store.h
===================================================================
RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-store.h,v
retrieving revision 1.5
diff -u -p -r1.5 camel-groupwise-store.h
--- camel-groupwise-store.h	11 Jan 2005 07:49:58 -0000	1.5
+++ camel-groupwise-store.h	22 Mar 2005 13:26:10 -0000
@@ -47,6 +47,21 @@ typedef struct _CamelGroupwiseStore Came
 typedef struct _CamelGroupwiseStoreClass CamelGroupwiseStoreClass;
 typedef struct _CamelGroupwiseStorePrivate CamelGroupwiseStorePrivate;
 
+#define GROUPWISE_PARAM_CHECK_ALL                    (1 << 0)
+#define GROUPWISE_PARAM_FILTER_INBOX                 (1 << 1)
+#define GROUPWISE_PARAM_FILTER_JUNK                  (1 << 2)
+#define GROUPWISE_PARAM_FILTER_JUNK_INBOX            (1 << 3)
+
+#define GROUPWISE_PARAM_CHECK_ALL                    (1 << 0)
+#define GROUPWISE_PARAM_FILTER_INBOX                 (1 << 1)
+#define GROUPWISE_PARAM_FILTER_JUNK                  (1 << 2)
+#define GROUPWISE_PARAM_FILTER_JUNK_INBOX            (1 << 3)
+
+#define GROUPWISE_PARAM_CHECK_ALL                    (1 << 0)
+#define GROUPWISE_PARAM_FILTER_INBOX                 (1 << 1)
+#define GROUPWISE_PARAM_FILTER_JUNK                  (1 << 2)
+#define GROUPWISE_PARAM_FILTER_JUNK_INBOX            (1 << 3)
+
 struct _CamelGroupwiseStore {
 	CamelOfflineStore parent_object;
 
@@ -55,6 +70,7 @@ struct _CamelGroupwiseStore {
 	char *root_container ;
 	CamelGroupwiseStorePrivate *priv;
 	CamelFolder *current_folder ;
+	guint32 parameters;
 
 };
 
@@ -72,7 +88,6 @@ char * groupwise_get_name(CamelService *
 const char *camel_groupwise_store_container_id_lookup (CamelGroupwiseStore *gw_store, const char *folder_name) ;
 const char *camel_groupwise_store_folder_lookup (CamelGroupwiseStore *gw_store, const char *container_id) ;
 EGwConnection *cnc_lookup (CamelGroupwiseStorePrivate *priv) ;
-const char *gw_get_path (CamelGroupwiseStore *gw_store, const char *folder_name) ;
 char *storage_path_lookup (CamelGroupwiseStorePrivate *priv) ;
 
 
Index: camel-groupwise-folder.c
===================================================================
RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-folder.c,v
retrieving revision 1.43
diff -u -p -r1.43 camel-groupwise-folder.c
--- camel-groupwise-folder.c	21 Mar 2005 16:58:40 -0000	1.43
+++ camel-groupwise-folder.c	22 Mar 2005 13:26:10 -0000
@@ -88,7 +88,7 @@ groupwise_folder_get_message( CamelFolde
 	CamelGroupwiseStore *gw_store = CAMEL_GROUPWISE_STORE(folder->parent_store) ;
 	CamelGroupwiseStorePrivate  *priv = gw_store->priv;
 	CamelGroupwiseMessageInfo *mi = NULL ;
-	char *temp_name, *folder_name, *container_id, *body , *temp_str = NULL ;
+	char *container_id, *body , *temp_str = NULL ;
 	GSList *recipient_list, *attach_list ;
 	EGwItemOrganizer *org ;
 	EGwItemType type ;
@@ -153,16 +153,7 @@ groupwise_folder_get_message( CamelFolde
 		return NULL;
 	}
 		
-	folder_name = g_strdup(folder->name) ;
-	temp_name = strrchr (folder_name,'/') ;
-	if(temp_name == NULL) {
-		container_id =  g_strdup (camel_groupwise_store_container_id_lookup (gw_store, folder_name)) ;
-	}
-	else {
-		temp_name++ ;
-		container_id =  g_strdup (camel_groupwise_store_container_id_lookup (gw_store, temp_name)) ;
-	}
-
+	container_id =  g_strdup (camel_groupwise_store_container_id_lookup (gw_store, folder->full_name)) ;
 	
 	/*Create and populate the MIME Message structure*/
 	msg = camel_mime_message_new () ;
@@ -522,7 +513,7 @@ groupwise_sync (CamelFolder *folder, gbo
 	if (((CamelOfflineStore *) gw_store)->state == CAMEL_OFFLINE_STORE_NETWORK_UNAVAIL) 
 		return ;
 	
-	container_id =  camel_groupwise_store_container_id_lookup (gw_store, folder->name) ;
+	container_id =  camel_groupwise_store_container_id_lookup (gw_store, folder->full_name) ;
 	
 	CAMEL_SERVICE_LOCK (folder->parent_store, connect_lock);
 
@@ -639,7 +630,7 @@ groupwise_refresh_info(CamelFolder *fold
 	char *container_id = NULL ;
 	char *time_string = NULL, *t_str = NULL ;
 	
-	container_id = g_strdup (camel_groupwise_store_container_id_lookup (gw_store, folder->name)) ;
+	container_id = g_strdup (camel_groupwise_store_container_id_lookup (gw_store, folder->full_name)) ;
 	if (!container_id) {
 		g_print ("\nERROR - Container id not present. Cannot refresh info\n") ;
 		return ;
@@ -856,7 +847,7 @@ groupwise_append_message (CamelFolder *f
 	}
 	CAMEL_SERVICE_LOCK (folder->parent_store, connect_lock) ;
 	/*Get the container id*/
-	container_id = camel_groupwise_store_container_id_lookup (gw_store, folder->name) ;
+	container_id = camel_groupwise_store_container_id_lookup (gw_store, folder->full_name) ;
 	/* FIXME Separate To/CC/BCC? */
 	recipients = CAMEL_ADDRESS (camel_internet_address_new ());
 	camel_address_cat (recipients, CAMEL_ADDRESS (camel_mime_message_get_recipients (message, CAMEL_RECIPIENT_TYPE_TO)));
@@ -950,10 +941,10 @@ groupwise_transfer_messages_to (CamelFol
 		*transferred_uids = NULL ;
 
 	if (delete_originals) 
-		source_container_id = camel_groupwise_store_container_id_lookup (gw_store, source->name) ;
+		source_container_id = camel_groupwise_store_container_id_lookup (gw_store, source->full_name) ;
 	else
 		source_container_id = NULL ;
-	dest_container_id = camel_groupwise_store_container_id_lookup (gw_store, destination->name) ;
+	dest_container_id = camel_groupwise_store_container_id_lookup (gw_store, destination->full_name) ;
 
 	CAMEL_SERVICE_LOCK (source->parent_store, connect_lock);
 	/* check for offline operation */
@@ -1025,7 +1016,7 @@ groupwise_expunge (CamelFolder *folder, 
 
 	cnc = cnc_lookup (priv) ;
 	
-	container_id =  g_strdup (camel_groupwise_store_container_id_lookup (groupwise_store, folder->name)) ;
+	container_id =  g_strdup (camel_groupwise_store_container_id_lookup (groupwise_store, folder->full_name)) ;
 
 	max = camel_folder_summary_count (folder->summary);
 	for (i = 0; i < max; i++) {


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]