@@ -2469,13 +2469,14 @@ static int mail_engine_mrenf(int argc, char **argv, int sockd)
24692469 if (mail_engine_get_folder_id (pidb.get (), argv[3 ]) != 0 )
24702470 return MIDB_E_FOLDER_EXISTS;
24712471
2472+ /* cf. mmakf for example */
24722473 const char *ptoken = decoded_name.c_str (), *ptoken1;
24732474 uint64_t folder_id1 = PRIVATE_FID_IPMSUBTREE;
24742475 while ((ptoken1 = strchr (ptoken, ' /' )) != NULL ) {
2475- std::string temp_name (ptoken, ptoken1 - ptoken);
24762476 auto parent_name = std::string_view (decoded_name.c_str (), ptoken1 - decoded_name.c_str ());
24772477 auto folder_id2 = me_get_folder_id_raw (pidb.get (), parent_name);
24782478 if (0 == folder_id2) {
2479+ std::string temp_name (ptoken, ptoken1 - ptoken);
24792480 if (!common_util_create_folder (argv[1 ],
24802481 user_id, rop_util_make_eid_ex (1 , folder_id1),
24812482 temp_name.c_str (), &folder_id2))
@@ -2558,13 +2559,19 @@ static int mail_engine_mmakf(int argc, char **argv, int sockd)
25582559 if (me_get_folder_id_raw (pidb.get (), decoded_name) != 0 )
25592560 return MIDB_E_FOLDER_EXISTS;
25602561
2562+ /*
2563+ * Example:
2564+ * @decoded_name := A/B/C/D/E (input)
2565+ * @parent_name = stepwise A, A/B, A/B/C, A/B/C/D (path/level where to operate)
2566+ * @temp_name = stepwise A, B, C, D (parent name)
2567+ */
25612568 const char *ptoken = decoded_name.c_str (), *ptoken1;
25622569 uint64_t folder_id1 = PRIVATE_FID_IPMSUBTREE;
25632570 while ((ptoken1 = strchr (ptoken, ' /' )) != NULL ) {
2564- std::string temp_name (ptoken, ptoken1 - ptoken);
25652571 auto parent_name = std::string_view (decoded_name.c_str (), ptoken1 - decoded_name.c_str ());
2566- auto folder_id2 = mail_engine_get_folder_id (pidb.get (), parent_name);
2572+ auto folder_id2 = me_get_folder_id_raw (pidb.get (), parent_name);
25672573 if (0 == folder_id2) {
2574+ std::string temp_name (ptoken, ptoken1 - ptoken);
25682575 if (!common_util_create_folder (argv[1 ],
25692576 user_id, rop_util_make_eid_ex (1 , folder_id1),
25702577 temp_name.c_str (), &folder_id2))
0 commit comments