Browse Source

Merge branch 'ls/maint-mailinfo-no-inbody' into maint

* ls/maint-mailinfo-no-inbody:
  git am/mailinfo: Don't look at in-body headers when rebasing
maint
Junio C Hamano 15 years ago
parent
commit
2936824af2
  1. 12
      builtin-mailinfo.c
  2. 13
      git-am.sh
  3. 6
      t/t5100-mailinfo.sh
  4. 5
      t/t5100/info0015
  5. 5
      t/t5100/info0015--no-inbody-headers
  6. 5
      t/t5100/info0016
  7. 5
      t/t5100/info0016--no-inbody-headers
  8. 2
      t/t5100/msg0015
  9. 3
      t/t5100/msg0015--no-inbody-headers
  10. 2
      t/t5100/msg0016
  11. 4
      t/t5100/msg0016--no-inbody-headers
  12. 8
      t/t5100/patch0015
  13. 8
      t/t5100/patch0015--no-inbody-headers
  14. 8
      t/t5100/patch0016
  15. 8
      t/t5100/patch0016--no-inbody-headers
  16. 33
      t/t5100/sample.mbox

12
builtin-mailinfo.c

@ -26,6 +26,7 @@ static struct strbuf charset = STRBUF_INIT; @@ -26,6 +26,7 @@ static struct strbuf charset = STRBUF_INIT;
static int patch_lines;
static struct strbuf **p_hdr_data, **s_hdr_data;
static int use_scissors;
static int use_inbody_headers = 1;

#define MAX_HDR_PARSED 10
#define MAX_BOUNDARIES 5
@ -774,10 +775,17 @@ static int handle_commit_msg(struct strbuf *line) @@ -774,10 +775,17 @@ static int handle_commit_msg(struct strbuf *line)
strbuf_ltrim(line);
if (!line->len)
return 0;
}

if (use_inbody_headers && still_looking) {
still_looking = check_header(line, s_hdr_data, 0);
if (still_looking)
return 0;
}
} else
/* Only trim the first (blank) line of the commit message
* when ignoring in-body headers.
*/
still_looking = 0;

/* normalize the log message to UTF-8. */
if (metainfo_charset)
@ -1033,6 +1041,8 @@ int cmd_mailinfo(int argc, const char **argv, const char *prefix) @@ -1033,6 +1041,8 @@ int cmd_mailinfo(int argc, const char **argv, const char *prefix)
use_scissors = 1;
else if (!strcmp(argv[1], "--no-scissors"))
use_scissors = 0;
else if (!strcmp(argv[1], "--no-inbody-headers"))
use_inbody_headers = 0;
else
usage(mailinfo_usage);
argc--; argv++;

13
git-am.sh

@ -289,7 +289,7 @@ split_patches () { @@ -289,7 +289,7 @@ split_patches () {
prec=4
dotest="$GIT_DIR/rebase-apply"
sign= utf8=t keep= skip= interactive= resolved= rebasing= abort=
resolvemsg= resume= scissors=
resolvemsg= resume= scissors= no_inbody_headers=
git_apply_opt=
committer_date_is_author_date=
ignore_date=
@ -322,7 +322,7 @@ do @@ -322,7 +322,7 @@ do
--abort)
abort=t ;;
--rebasing)
rebasing=t threeway=t keep=t scissors=f ;;
rebasing=t threeway=t keep=t scissors=f no_inbody_headers=t ;;
-d|--dotest)
die "-d option is no longer supported. Do not use."
;;
@ -448,6 +448,7 @@ else @@ -448,6 +448,7 @@ else
echo "$utf8" >"$dotest/utf8"
echo "$keep" >"$dotest/keep"
echo "$scissors" >"$dotest/scissors"
echo "$no_inbody_headers" >"$dotest/no_inbody_headers"
echo "$GIT_QUIET" >"$dotest/quiet"
echo 1 >"$dotest/next"
if test -n "$rebasing"
@ -495,6 +496,12 @@ t) @@ -495,6 +496,12 @@ t)
f)
scissors=--no-scissors ;;
esac
if test "$(cat "$dotest/no_inbody_headers")" = t
then
no_inbody_headers=--no-inbody-headers
else
no_inbody_headers=
fi
if test "$(cat "$dotest/quiet")" = t
then
GIT_QUIET=t
@ -549,7 +556,7 @@ do @@ -549,7 +556,7 @@ do
# by the user, or the user can tell us to do so by --resolved flag.
case "$resume" in
'')
git mailinfo $keep $scissors $utf8 "$dotest/msg" "$dotest/patch" \
git mailinfo $keep $no_inbody_headers $scissors $utf8 "$dotest/msg" "$dotest/patch" \
<"$dotest/$msgnum" >"$dotest/info" ||
stop_here $this


6
t/t5100-mailinfo.sh

@ -11,7 +11,7 @@ test_expect_success 'split sample box' \ @@ -11,7 +11,7 @@ test_expect_success 'split sample box' \
'git mailsplit -o. "$TEST_DIRECTORY"/t5100/sample.mbox >last &&
last=`cat last` &&
echo total is $last &&
test `cat last` = 14'
test `cat last` = 16'

check_mailinfo () {
mail=$1 opt=$2
@ -30,6 +30,10 @@ do @@ -30,6 +30,10 @@ do
if test -f "$TEST_DIRECTORY"/t5100/msg$mail--scissors
then
check_mailinfo $mail --scissors
fi &&
if test -f "$TEST_DIRECTORY"/t5100/msg$mail--no-inbody-headers
then
check_mailinfo $mail --no-inbody-headers
fi
'
done

5
t/t5100/info0015

@ -0,0 +1,5 @@ @@ -0,0 +1,5 @@
Author:
Email:
Subject: check bogus body header (from)
Date: Fri, 9 Jun 2006 00:44:16 -0700

5
t/t5100/info0015--no-inbody-headers

@ -0,0 +1,5 @@ @@ -0,0 +1,5 @@
Author: A U Thor
Email: a.u.thor@example.com
Subject: check bogus body header (from)
Date: Fri, 9 Jun 2006 00:44:16 -0700

5
t/t5100/info0016

@ -0,0 +1,5 @@ @@ -0,0 +1,5 @@
Author: A U Thor
Email: a.u.thor@example.com
Subject: check bogus body header (date)
Date: bogus

5
t/t5100/info0016--no-inbody-headers

@ -0,0 +1,5 @@ @@ -0,0 +1,5 @@
Author: A U Thor
Email: a.u.thor@example.com
Subject: check bogus body header (date)
Date: Fri, 9 Jun 2006 00:44:16 -0700

2
t/t5100/msg0015

@ -0,0 +1,2 @@ @@ -0,0 +1,2 @@
- a list
- of stuff

3
t/t5100/msg0015--no-inbody-headers

@ -0,0 +1,3 @@ @@ -0,0 +1,3 @@
From: bogosity
- a list
- of stuff

2
t/t5100/msg0016

@ -0,0 +1,2 @@ @@ -0,0 +1,2 @@
and some content

4
t/t5100/msg0016--no-inbody-headers

@ -0,0 +1,4 @@ @@ -0,0 +1,4 @@
Date: bogus

and some content

8
t/t5100/patch0015

@ -0,0 +1,8 @@ @@ -0,0 +1,8 @@
---
diff --git a/foo b/foo
index e69de29..d95f3ad 100644
--- a/foo
+++ b/foo
@@ -0,0 +1 @@
+content

8
t/t5100/patch0015--no-inbody-headers

@ -0,0 +1,8 @@ @@ -0,0 +1,8 @@
---
diff --git a/foo b/foo
index e69de29..d95f3ad 100644
--- a/foo
+++ b/foo
@@ -0,0 +1 @@
+content

8
t/t5100/patch0016

@ -0,0 +1,8 @@ @@ -0,0 +1,8 @@
---
diff --git a/foo b/foo
index e69de29..d95f3ad 100644
--- a/foo
+++ b/foo
@@ -0,0 +1 @@
+content

8
t/t5100/patch0016--no-inbody-headers

@ -0,0 +1,8 @@ @@ -0,0 +1,8 @@
---
diff --git a/foo b/foo
index e69de29..d95f3ad 100644
--- a/foo
+++ b/foo
@@ -0,0 +1 @@
+content

33
t/t5100/sample.mbox

@ -650,3 +650,36 @@ index b0b5d8f..461c47e 100644 @@ -650,3 +650,36 @@ index b0b5d8f..461c47e 100644
convert_to_utf8(line, charset.buf);
--
1.6.4.1
From nobody Mon Sep 17 00:00:00 2001
From: A U Thor <a.u.thor@example.com>
Subject: check bogus body header (from)
Date: Fri, 9 Jun 2006 00:44:16 -0700

From: bogosity
- a list
- of stuff
---
diff --git a/foo b/foo
index e69de29..d95f3ad 100644
--- a/foo
+++ b/foo
@@ -0,0 +1 @@
+content

From nobody Mon Sep 17 00:00:00 2001
From: A U Thor <a.u.thor@example.com>
Subject: check bogus body header (date)
Date: Fri, 9 Jun 2006 00:44:16 -0700

Date: bogus

and some content

---
diff --git a/foo b/foo
index e69de29..d95f3ad 100644
--- a/foo
+++ b/foo
@@ -0,0 +1 @@
+content


Loading…
Cancel
Save