aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--camel/ChangeLog5
-rw-r--r--camel/providers/imap/camel-imap-store.c10
2 files changed, 14 insertions, 1 deletions
diff --git a/camel/ChangeLog b/camel/ChangeLog
index 4de4145938..c1d32a908b 100644
--- a/camel/ChangeLog
+++ b/camel/ChangeLog
@@ -1,3 +1,8 @@
+2002-08-01 Peter Williams <peterw@ximian.com>
+
+ * providers/imap/camel-imap-store.c (create_folder): If the folder
+ name contains the directory separator, reject it.
+
2002-08-02 Not Zed <NotZed@Ximian.com>
* providers/local/camel-mbox-summary.c (mbox_summary_check): Clear
diff --git a/camel/providers/imap/camel-imap-store.c b/camel/providers/imap/camel-imap-store.c
index daee1cde70..2972c52f8b 100644
--- a/camel/providers/imap/camel-imap-store.c
+++ b/camel/providers/imap/camel-imap-store.c
@@ -1743,7 +1743,15 @@ create_folder (CamelStore *store, const char *parent_name,
return NULL;
if (!parent_name)
parent_name = "";
-
+
+ if (strchr (folder_name, imap_store->dir_sep)) {
+ camel_exception_setv (ex, CAMEL_EXCEPTION_FOLDER_INVALID_PATH,
+ _("The folder name \"%s\" is invalid because "
+ "it containes the character \"%c\""),
+ folder_name, imap_store->dir_sep);
+ return NULL;
+ }
+
/* check if the parent allows inferiors */
need_convert = FALSE;