]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
imap_parser_read_args() didn't correctly return how many parameters were read.
authorTimo Sirainen <tss@iki.fi>
Mon, 22 Jun 2009 04:11:43 +0000 (00:11 -0400)
committerTimo Sirainen <tss@iki.fi>
Mon, 22 Jun 2009 04:11:43 +0000 (00:11 -0400)
--HG--
branch : HEAD

src/lib-imap/imap-parser.c

index 8c5fed7060dbbfc770232777aef707a06d1b9e95..abf37c5254736667f294030016d249a6689345cf 100644 (file)
@@ -540,6 +540,7 @@ static int finish_line(struct imap_parser *parser, unsigned int count,
                       const struct imap_arg **args_r)
 {
        struct imap_arg *arg;
+       int ret = array_count(&parser->root_list);
 
        parser->line_size += parser->cur_pos;
        i_stream_skip(parser->input, parser->cur_pos);
@@ -560,7 +561,7 @@ static int finish_line(struct imap_parser *parser, unsigned int count,
        arg->type = IMAP_ARG_EOL;
 
        *args_r = array_get(&parser->root_list, &count);
-       return count;
+       return ret;
 }
 
 int imap_parser_read_args(struct imap_parser *parser, unsigned int count,