diff options
author | hiro <hiro@ee746299-78ed-0310-b773-934348b2243d> | 2008-07-10 02:04:18 +0000 |
---|---|---|
committer | hiro <hiro@ee746299-78ed-0310-b773-934348b2243d> | 2008-07-10 02:04:18 +0000 |
commit | b7e440df52f5e1a3c64964753abedfc1b029667d (patch) | |
tree | a74363eb01f9836f6f64183fb88e523f82a91594 | |
parent | b8c4a7b8243b7f7684f032773b5dff24e98012aa (diff) |
imap_add_inter_folders(): more error checks.
git-svn-id: svn://sylpheed.sraoss.jp/sylpheed/trunk@2027 ee746299-78ed-0310-b773-934348b2243d
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | ChangeLog.ja | 4 | ||||
-rw-r--r-- | libsylph/imap.c | 2 |
3 files changed, 10 insertions, 0 deletions
@@ -1,3 +1,7 @@ +2008-07-10 + + * libsylph/imap.c: imap_add_inter_folders(): more error checks. + 2008-07-09 * libsylph/imap.c: imap_get_folder_list(): add intermediate folders diff --git a/ChangeLog.ja b/ChangeLog.ja index 00d6e094..d697900c 100644 --- a/ChangeLog.ja +++ b/ChangeLog.ja @@ -1,3 +1,7 @@ +2008-07-10 + + * libsylph/imap.c: imap_add_inter_folders(): エラーチェックの追加。 + 2008-07-09 * libsylph/imap.c: imap_get_folder_list(): 中間フォルダを追加する diff --git a/libsylph/imap.c b/libsylph/imap.c index 189aed59..edb8c908 100644 --- a/libsylph/imap.c +++ b/libsylph/imap.c @@ -2037,6 +2037,7 @@ static GSList *imap_add_inter_folders(GSList *item_list, const gchar *root_path) strncmp(root_path, item->path, root_path_len) != 0) continue; p = item->path + root_path_len; + if (root_path_len > 0 && *p != '/') continue; while (*p == '/') p++; if (*p == '\0') continue; g_hash_table_insert(exist, (gpointer)p, GINT_TO_POINTER(1)); @@ -2053,6 +2054,7 @@ static GSList *imap_add_inter_folders(GSList *item_list, const gchar *root_path) strncmp(root_path, item->path, root_path_len) != 0) continue; p = item->path + root_path_len; + if (root_path_len > 0 && *p != '/') continue; while (*p == '/') p++; if (*p == '\0') continue; |