All of lore.kernel.org
 help / color / mirror / Atom feed
From: Michael Haggerty <mhagger@alum.mit.edu>
To: Jonathan Nieder <jrnieder@gmail.com>
Cc: Junio C Hamano <gitster@pobox.com>, Jeff King <peff@peff.net>,
	git@vger.kernel.org
Subject: Re: [PATCH 01/14] imap-send.c: remove msg_data::flags, which was always zero
Date: Mon, 14 Jan 2013 10:10:02 +0100	[thread overview]
Message-ID: <50F3CB6A.40203@alum.mit.edu> (raw)
In-Reply-To: <20130114055721.GD3125@elie.Belkin>

On 01/14/2013 06:57 AM, Jonathan Nieder wrote:
> Michael Haggerty wrote:
> 
>> This removes the need for function imap_make_flags(), so delete it,
>> too.
> [...]
>> --- a/imap-send.c
>> +++ b/imap-send.c
> [...]
>>  	box = gctx->name;
>>  	prefix = !strcmp(box, "INBOX") ? "" : ctx->prefix;
>>  	cb.create = 0;
>> -	ret = imap_exec_m(ctx, &cb, "APPEND \"%s%s\" %s", prefix, box, flagstr);
>> +	ret = imap_exec_m(ctx, &cb, "APPEND \"%s%s\"", prefix, box);
> 
> Before this change, the command is
> 
> 	"APPEND" SP mailbox SP "{" msglen "}" CRLF
> 
> .  After this change, it leaves out the space before the brace.  If I
> understand RFC3501 correctly, the space is required.  Intentional?

No, not intentional.  I simply didn't follow far enough how the string
was used and mistakenly thought it was an entire command.  Thanks for
finding and fixing this.

(It probably would be less error-prone if v_issue_imap_cmd() would be
responsible for adding the extra space in the second branch of the
following if statement:

    if (!cmd->cb.data)
            bufl = nfsnprintf(buf, sizeof(buf), "%d %s\r\n", cmd->tag,
cmd->cmd);
    else
            bufl = nfsnprintf(buf, sizeof(buf), "%d %s{%d%s}\r\n",
                              cmd->tag, cmd->cmd, cmd->cb.dlen,
                              CAP(LITERALPLUS) ? "+" : "");

but that's a design choice that was already in the original version and
I don't care enough to change it.)

> With the below squashed in,
> Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>
> 
> diff --git i/imap-send.c w/imap-send.c
> index 451d5027..f1c8f5a5 100644
> --- i/imap-send.c
> +++ w/imap-send.c
> @@ -1296,7 +1296,7 @@ static int imap_store_msg(struct store *gctx, struct msg_data *msg)
>  	box = gctx->name;
>  	prefix = !strcmp(box, "INBOX") ? "" : ctx->prefix;
>  	cb.create = 0;
> -	ret = imap_exec_m(ctx, &cb, "APPEND \"%s%s\"", prefix, box);
> +	ret = imap_exec_m(ctx, &cb, "APPEND \"%s%s\" ", prefix, box);
>  	imap->caps = imap->rcaps;
>  	if (ret != DRV_OK)
>  		return ret;
> 

ACK.

Michael

-- 
Michael Haggerty
mhagger@alum.mit.edu
http://softwareswirl.blogspot.com/

  reply	other threads:[~2013-01-14  9:10 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-01-14  5:32 [PATCH 00/14] Remove unused code from imap-send.c Michael Haggerty
2013-01-14  5:32 ` [PATCH 01/14] imap-send.c: remove msg_data::flags, which was always zero Michael Haggerty
2013-01-14  5:57   ` Jonathan Nieder
2013-01-14  9:10     ` Michael Haggerty [this message]
2013-01-14  5:32 ` [PATCH 02/14] imap-send.c: remove struct msg_data Michael Haggerty
2013-01-14  5:32 ` [PATCH 03/14] iamp-send.c: remove unused struct imap_store_conf Michael Haggerty
2013-01-14  5:32 ` [PATCH 04/14] imap-send.c: remove struct store_conf Michael Haggerty
2013-01-14  5:32 ` [PATCH 05/14] imap-send.c: remove struct message Michael Haggerty
2013-01-14  5:32 ` [PATCH 06/14] imap-send.c: remove some unused fields from struct store Michael Haggerty
2013-01-14  6:19   ` Jonathan Nieder
2013-01-14  9:25     ` Michael Haggerty
2013-01-14  5:32 ` [PATCH 07/14] imap-send.c: inline imap_parse_list() in imap_list() Michael Haggerty
2013-01-14  5:32 ` [PATCH 08/14] imap-send.c: remove struct imap argument to parse_imap_list_l() Michael Haggerty
2013-01-14  5:32 ` [PATCH 09/14] imap-send.c: remove namespace fields from struct imap Michael Haggerty
2013-01-14  6:43   ` Jonathan Nieder
2013-01-14  9:31     ` Michael Haggerty
2013-01-14  5:32 ` [PATCH 10/14] imap-send.c: remove unused field imap_store::trashnc Michael Haggerty
2013-01-14  5:32 ` [PATCH 11/14] imap-send.c: simplify logic in lf_to_crlf() Michael Haggerty
2013-01-14  6:47   ` Jonathan Nieder
2013-01-14  5:32 ` [PATCH 12/14] imap-send.c: use struct imap_store instead of struct store Michael Haggerty
2013-01-14  6:52   ` Jonathan Nieder
2013-01-14  5:32 ` [PATCH 13/14] imap-send.c: remove unused field imap_store::uidvalidity Michael Haggerty
2013-01-14  5:32 ` [PATCH 14/14] imap-send.c: fold struct store into struct imap_store Michael Haggerty
2013-01-14  6:06 ` [PATCH 00/14] Remove unused code from imap-send.c Jeff King
2013-01-14  6:57 ` Jonathan Nieder
2013-01-14  9:33   ` Michael Haggerty
2013-01-14 19:02     ` Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=50F3CB6A.40203@alum.mit.edu \
    --to=mhagger@alum.mit.edu \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=jrnieder@gmail.com \
    --cc=peff@peff.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.