[PATCH v2] git-am: fix maildir support regression for unordered headers in emails
- From
- Nicolas Sebrecht <nicolas.s.dev@gmx.fr>
- Date
- Jul 15, 2009, 05:52 UTC
- Message-ID
- <2433101adeafddeab78815083446552ff3ea9f49.1247636959.git.nicolas.s.dev@gmx.fr>
- In-Reply-To
- <20090714122354.GA13806@vidovic>
Patch format detection introduced by a5a6755a1d4707bf2fab7752e5c974ebf63d086a may refuse valid patches from verbatim emails.
Emails may have header fields in a random order.
Signed-off-by: Nicolas Sebrecht <nicolas.s.dev@gmx.fr> --- git-am.sh | 10 ++++++++++ 1 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/git-am.sh b/git-am.sh index d64d997..18e53d0 100755 --- a/git-am.sh +++ b/git-am.sh @@ -146,6 +146,7 @@ clean_abort () { } patch_format= +is_verbatim_email= check_patch_format () { # early return if patch_format was set from the command line @@ -191,6 +192,15 @@ check_patch_format () { esac ;; esac + # Keep maildir workflows support. + # Verbatim emails may have header fields in random order. + is_verbatim_email='true' + for line in "$l1" "$l2" "$l3"; do + printf "$line" | grep --quiet --extended-regexp '^([^\ ])+: +.*' || + is_verbatim_email='false' + done + # next treatments don't differ from mailbox format + [[ $is_verbatim_email == 'true' ]] && patch_format=mbox } < "$1" || clean_abort }
-- 1.6.4.rc0.129.gf738