]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
imapc: Don't assert-crash when trying to access imapc_list_prefix itself.
authorTimo Sirainen <tss@iki.fi>
Sat, 1 Jun 2013 00:06:54 +0000 (03:06 +0300)
committerTimo Sirainen <tss@iki.fi>
Sat, 1 Jun 2013 00:06:54 +0000 (03:06 +0300)
src/lib-storage/index/imapc/imapc-list.c

index 52fbd3a0777e2022db43186dfc3cb182c0165ad3..9a644c936d9d7b3a16730970013e8bd8bf46714a 100644 (file)
@@ -225,9 +225,14 @@ imapc_list_get_vname(struct mailbox_list *_list, const char *storage_name)
                /* ACL plugin does these lookups */
        } else if (*prefix != '\0' && strcasecmp(storage_name, "INBOX") != 0) {
                prefix_len = strlen(prefix);
-               i_assert(strncmp(prefix, storage_name, prefix_len) == 0 &&
-                        storage_name[prefix_len] == list->sep);
-               storage_name += prefix_len+1;
+               i_assert(strncmp(prefix, storage_name, prefix_len) == 0);
+               storage_name += prefix_len;
+               if (storage_name[0] == '\0') {
+                       /* we're looking up the prefix itself */
+               } else {
+                       i_assert(storage_name[0] == list->sep);
+                       storage_name++;
+               }
        }
        return mailbox_list_default_get_vname(_list, storage_name);
 }