@@ -1599,12 +1599,10 @@ int imap_cmd_parser_examine(int argc, char **argv, imap_context *pcontext)
15991599int imap_cmd_parser_create (int argc, char **argv, imap_context *pcontext)
16001600{
16011601 int errnum;
1602- std::string sys_name, converted_name;
16031602
16041603 if (!pcontext->is_authed ())
16051604 return 1804 ;
1606- if (argc < 3 || strlen (argv[2 ]) == 0 || strlen (argv[2 ]) >= 1024 ||
1607- !imap_cmd_parser_imapfolder_to_sysfolder (argv[2 ], sys_name))
1605+ if (argc < 3 || strlen (argv[2 ]) == 0 )
16081606 return 1800 ;
16091607 if (strpbrk (argv[2 ], " %*?" ) != nullptr )
16101608 return 1910 ;
@@ -1614,7 +1612,7 @@ int imap_cmd_parser_create(int argc, char **argv, imap_context *pcontext)
16141612 if (ret != 0 )
16151613 return ret;
16161614 imap_cmd_parser_convert_folderlist (folder_list);
1617- sys_name = argv[2 ]; // Go back to non-encoded string
1615+ std::string sys_name = argv[2 ]; // Go back to non-encoded string
16181616 if (sys_name.size () > 0 && sys_name.back () == ' /' )
16191617 sys_name.pop_back ();
16201618 if (std::any_of (folder_list.cbegin (), folder_list.cend (),
@@ -1630,6 +1628,7 @@ int imap_cmd_parser_create(int argc, char **argv, imap_context *pcontext)
16301628 sys_name[i] = ' /' ;
16311629 continue ;
16321630 }
1631+ std::string converted_name;
16331632 if (!imap_cmd_parser_imapfolder_to_sysfolder (sys_name.c_str (), converted_name))
16341633 return 1800 ;
16351634 ssr = midb_agent::make_folder (pcontext->maildir ,
0 commit comments