Skip to content

Commit

Permalink
imap-send: Remove limitation on message body
Browse files Browse the repository at this point in the history
There is a documented limitation on the body of any email not being
able to contain lines starting with "From ". This patch removes that
limitation by improving the parser to search for "From", "Date", and
"Subject" fields in the email before considering it to be an email.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
  • Loading branch information
Ramkumar Ramachandra authored and Junio C Hamano committed Mar 24, 2010
1 parent 0b3dcfe commit 4916c8f
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 8 deletions.
10 changes: 3 additions & 7 deletions Documentation/git-imap-send.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,9 @@ DESCRIPTION
This command uploads a mailbox generated with 'git format-patch'
into an IMAP drafts folder. This allows patches to be sent as
other email is when using mail clients that cannot read mailbox
files directly.
files directly. The command also works with any general mailbox
in which emails have the fields "From", "Date", and "Subject" in
that order.

Typical usage is something like:

Expand Down Expand Up @@ -118,12 +120,6 @@ Thunderbird in particular is known to be problematic. Thunderbird
users may wish to visit this web page for more information:
http://kb.mozillazine.org/Plain_text_e-mail_-_Thunderbird#Completely_plain_email


BUGS
----
Doesn't handle lines starting with "From " in the message body.


Author
------
Derived from isync 1.0.1 by Mike McCormack.
Expand Down
8 changes: 7 additions & 1 deletion imap-send.c
Original file line number Diff line number Diff line change
Expand Up @@ -1306,8 +1306,14 @@ static int count_messages(struct msg_data *msg)

while (1) {
if (!prefixcmp(p, "From ")) {
p = strstr(p+5, "\nFrom: ");
if (!p) break;
p = strstr(p+7, "\nDate: ");
if (!p) break;
p = strstr(p+7, "\nSubject: ");
if (!p) break;
p += 10;
count++;
p += 5;
}
p = strstr(p+5, "\nFrom ");
if (!p)
Expand Down

0 comments on commit 4916c8f

Please sign in to comment.