Nicolas Sebrecht wrote: > The 06/08/09, Brandon Casey wrote: > >> git-am.sh | 14 ++++++++++++++ >> t/t4150-am.sh | 2 +- >> 2 files changed, 15 insertions(+), 1 deletions(-) >> >> diff --git a/git-am.sh b/git-am.sh >> index d64d997..dd60f5d 100755 >> --- a/git-am.sh >> +++ b/git-am.sh >> @@ -191,6 +191,20 @@ check_patch_format () { >> esac >> ;; >> esac >> + if test -z "$patch_format" && >> + test -n "$l1" && >> + test -n "$l2" && >> + test -n "$l3" >> + then >> + # This begins with three non-empty lines. Is this a >> + # piece of e-mail a-la RFC2822? Grab all the headers, >> + # discarding the indented remainder of folded lines, >> + # and see if it looks like that they all begin with the >> + # header field names... >> + sed -n -e '/^$/q' -e '/^[ ]/d' -e p "$1" | >> + egrep -v '^[A-Za-z]+(-[A-Za-z]+)*:' >/dev/null || >> + patch_format=mbox >> + fi >> } < "$1" || clean_abort >> } > > May I ask why you resurrect this "first three lines check for rfc2822" > instead of dumbly falling back to the "mbox" patch_format? Performance? This at least checks that the header has the correct form for an email. The dumb fallback to mbox format would just blindly pass the patch to mailsplit which (I think) would just dump out an improperly formatted email. git-am would then start the process of applying the malformed patch and fail. With this patch, we can catch the failure earlier and hopefully provide a better complaint to the user. -brandon -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html