aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mail/ChangeLog8
-rw-r--r--mail/em-folder-selector.c2
-rw-r--r--mail/em-folder-tree-model.c2
-rw-r--r--mail/em-utils.c14
4 files changed, 19 insertions, 7 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog
index c207619a65..7dbcc81cba 100644
--- a/mail/ChangeLog
+++ b/mail/ChangeLog
@@ -1,3 +1,11 @@
+2004-06-11 Not Zed <NotZed@Ximian.com>
+
+ * em-utils.c (em_uri_from_camel): handle a null path or fragment.
+
+ * em-folder-tree-model.c (em_folder_tree_model_add_store): set the
+ full name of the store to "". Fixes #59925 and probably other
+ issues. Related to the removal of folderinfo->path.
+
2004-06-10 Jeffrey Stedfast <fejj@novell.com>
Fixes bug #58825. Ugh. Really Gross Hack (tm).
diff --git a/mail/em-folder-selector.c b/mail/em-folder-selector.c
index 3ec8c4824c..f31e06c78c 100644
--- a/mail/em-folder-selector.c
+++ b/mail/em-folder-selector.c
@@ -196,7 +196,7 @@ emfs_create_name_changed (GtkEntry *entry, EMFolderSelector *emfs)
text = gtk_entry_get_text (emfs->name_entry);
path = em_folder_tree_get_selected_path (emfs->emft);
-
+
active = text && path && !strchr (text, '/');
gtk_dialog_set_response_sensitive ((GtkDialog *) emfs, GTK_RESPONSE_OK, active);
diff --git a/mail/em-folder-tree-model.c b/mail/em-folder-tree-model.c
index aa32044b6f..b3d64c2154 100644
--- a/mail/em-folder-tree-model.c
+++ b/mail/em-folder-tree-model.c
@@ -748,7 +748,7 @@ em_folder_tree_model_add_store (EMFolderTreeModel *model, CamelStore *store, con
gtk_tree_store_set ((GtkTreeStore *) model, &iter,
COL_STRING_DISPLAY_NAME, display_name,
COL_POINTER_CAMEL_STORE, store,
- COL_STRING_FULL_NAME, NULL,
+ COL_STRING_FULL_NAME, "",
COL_BOOL_LOAD_SUBDIRS, TRUE,
COL_BOOL_IS_STORE, TRUE,
COL_STRING_URI, uri, -1);
diff --git a/mail/em-utils.c b/mail/em-utils.c
index c82d2c9636..6cc735e981 100644
--- a/mail/em-utils.c
+++ b/mail/em-utils.c
@@ -1556,12 +1556,16 @@ char *em_uri_from_camel(const char *curi)
else
uid = account->uid;
path = (provider->url_flags & CAMEL_URL_FRAGMENT_IS_PATH)?curl->fragment:curl->path;
- if (path[0] == '/')
- path++;
+ if (path) {
+ if (path[0] == '/')
+ path++;
- tmp = camel_url_encode(path, ";?");
- euri = g_strdup_printf("email://%s/%s", uid, tmp);
- g_free(tmp);
+ tmp = camel_url_encode(path, ";?");
+ euri = g_strdup_printf("email://%s/%s", uid, tmp);
+ g_free(tmp);
+ } else {
+ euri = g_strdup_printf("email://%s/", uid);
+ }
d(printf("em uri from camel '%s' -> '%s'\n", curi, euri));