]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
Avoid calling imap_parser_*() directly. It's not required.
authorTimo Sirainen <tss@iki.fi>
Fri, 6 Feb 2009 18:10:06 +0000 (13:10 -0500)
committerTimo Sirainen <tss@iki.fi>
Fri, 6 Feb 2009 18:10:06 +0000 (13:10 -0500)
--HG--
branch : HEAD

src/imap/cmd-search.c
src/imap/cmd-sort.c
src/imap/cmd-thread.c

index 4c1228a86438a1c19751dfc97dca0996234e41c2..ce77683f21b8cd65233a523a63557cc396987aba 100644 (file)
@@ -9,19 +9,11 @@ bool cmd_search(struct client_command_context *cmd)
        struct imap_search_context *ctx;
        struct mail_search_args *sargs;
        const struct imap_arg *args;
-       int ret, args_count;
        const char *charset;
+       int ret;
 
-       args_count = imap_parser_read_args(cmd->parser, 0, 0, &args);
-       if (args_count < 1) {
-               if (args_count == -2)
-                       return FALSE;
-
-               client_send_command_error(cmd, args_count < 0 ? NULL :
-                                         "Missing SEARCH arguments.");
-               return TRUE;
-       }
-       cmd->client->input_lock = NULL;
+       if (!client_read_args(cmd, 0, 0, &args))
+               return FALSE;
 
        if (!client_verify_open_mailbox(cmd))
                return TRUE;
index 57c47049569edc7d32fe64562af3514a96bbf95b..bf14064c5e1259e5f01a7017f533659b3a912f50 100644 (file)
@@ -93,20 +93,11 @@ bool cmd_sort(struct client_command_context *cmd)
        struct mail_search_args *sargs;
        enum mail_sort_type sort_program[MAX_SORT_PROGRAM_SIZE];
        const struct imap_arg *args;
-       int args_count;
        const char *charset;
        int ret;
 
-       args_count = imap_parser_read_args(cmd->parser, 0, 0, &args);
-       if (args_count == -2)
+       if (!client_read_args(cmd, 0, 0, &args))
                return FALSE;
-       cmd->client->input_lock = NULL;
-
-       if (args_count < 3) {
-               client_send_command_error(cmd, args_count < 0 ? NULL :
-                                         "Missing or invalid arguments.");
-               return TRUE;
-       }
 
        if (!client_verify_open_mailbox(cmd))
                return TRUE;
index bdb744469542c83c7501623ae282ca0f5e9e6b91..b239250fbc824613df0765381e2f69a9a0174f12 100644 (file)
@@ -108,19 +108,11 @@ bool cmd_thread(struct client_command_context *cmd)
        enum mail_thread_type thread_type;
        struct mail_search_args *sargs;
        const struct imap_arg *args;
-       int ret, args_count;
        const char *charset, *str;
+       int ret;
 
-       args_count = imap_parser_read_args(cmd->parser, 0, 0, &args);
-       if (args_count == -2)
+       if (!client_read_args(cmd, 0, 0, &args))
                return FALSE;
-       client->input_lock = NULL;
-
-       if (args_count < 3) {
-               client_send_command_error(cmd, args_count < 0 ? NULL :
-                                         "Missing or invalid arguments.");
-               return TRUE;
-       }
 
        if (!client_verify_open_mailbox(cmd))
                return TRUE;
@@ -140,8 +132,7 @@ bool cmd_thread(struct client_command_context *cmd)
 
        /* charset */
        if (args->type != IMAP_ARG_ATOM && args->type != IMAP_ARG_STRING) {
-               client_send_command_error(cmd,
-                                         "Invalid charset argument.");
+               client_send_command_error(cmd, "Invalid charset argument.");
                return TRUE;
        }
        charset = IMAP_ARG_STR(args);