Browse Source

format-patch --attach: not folding some long headers.

Panagiotis Issaris reports that some MUAs seem not to like
folded "content-type" and "content-disposition" headers, so this
makes format-patch --attach output to avoid them.

Signed-off-by: Junio C Hamano <junkio@cox.net>
maint
Junio C Hamano 18 years ago
parent
commit
33ee4cfb69
  1. 6
      log-tree.c
  2. 2
      t/t4013-diff-various.sh
  3. 27
      t/t4013/diff.format-patch_--attach_--stdout_initial..master
  4. 18
      t/t4013/diff.format-patch_--attach_--stdout_initial..master^
  5. 9
      t/t4013/diff.format-patch_--attach_--stdout_initial..side
  6. 27
      t/t4013/diff.format-patch_--inline_--stdout_initial..master
  7. 18
      t/t4013/diff.format-patch_--inline_--stdout_initial..master^
  8. 9
      t/t4013/diff.format-patch_--inline_--stdout_initial..side

6
log-tree.c

@ -186,7 +186,7 @@ void show_log(struct rev_info *opt, const char *sep) @@ -186,7 +186,7 @@ void show_log(struct rev_info *opt, const char *sep)
snprintf(subject_buffer, sizeof(subject_buffer) - 1,
"%s"
"MIME-Version: 1.0\n"
"Content-Type: multipart/mixed;\n"
"Content-Type: multipart/mixed;"
" boundary=\"%s%s\"\n"
"\n"
"This is a multi-part message in MIME "
@ -202,10 +202,10 @@ void show_log(struct rev_info *opt, const char *sep) @@ -202,10 +202,10 @@ void show_log(struct rev_info *opt, const char *sep)

snprintf(buffer, sizeof(buffer) - 1,
"--%s%s\n"
"Content-Type: text/x-patch;\n"
"Content-Type: text/x-patch;"
" name=\"%s.diff\"\n"
"Content-Transfer-Encoding: 8bit\n"
"Content-Disposition: %s;\n"
"Content-Disposition: %s;"
" filename=\"%s.diff\"\n\n",
mime_boundary_leader, opt->mime_boundary,
sha1,

2
t/t4013-diff-various.sh

@ -106,7 +106,7 @@ do @@ -106,7 +106,7 @@ do
echo "\$ git $cmd"
git $cmd |
sed -e "s/^\\(-*\\)$V\\(-*\\)\$/\\1g-i-t--v-e-r-s-i-o-n\2/" \
-e "s/^\\( *boundary=\"-*\\)$V\\(-*\\)\"\$/\\1g-i-t--v-e-r-s-i-o-n\2\"/"
-e "s/^\\(.*mixed; boundary=\"-*\\)$V\\(-*\\)\"\$/\\1g-i-t--v-e-r-s-i-o-n\2\"/"
echo "\$"
} >"$actual" &&
if test -f "$expect"

27
t/t4013/diff.format-patch_--attach_--stdout_initial..master

@ -4,8 +4,7 @@ From: A U Thor <author@example.com> @@ -4,8 +4,7 @@ From: A U Thor <author@example.com>
Date: Mon, 26 Jun 2006 00:01:00 +0000
Subject: [PATCH] Second
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="------------g-i-t--v-e-r-s-i-o-n"
Content-Type: multipart/mixed; boundary="------------g-i-t--v-e-r-s-i-o-n"

This is a multi-part message in MIME format.
--------------g-i-t--v-e-r-s-i-o-n
@ -21,11 +20,9 @@ This is the second commit. @@ -21,11 +20,9 @@ This is the second commit.
3 files changed, 5 insertions(+), 3 deletions(-)
delete mode 100644 file2
--------------g-i-t--v-e-r-s-i-o-n
Content-Type: text/x-patch;
name="1bde4ae5f36c8d9abe3a0fce0c6aab3c4a12fe44.diff"
Content-Type: text/x-patch; name="1bde4ae5f36c8d9abe3a0fce0c6aab3c4a12fe44.diff"
Content-Transfer-Encoding: 8bit
Content-Disposition: attachment;
filename="1bde4ae5f36c8d9abe3a0fce0c6aab3c4a12fe44.diff"
Content-Disposition: attachment; filename="1bde4ae5f36c8d9abe3a0fce0c6aab3c4a12fe44.diff"

diff --git a/dir/sub b/dir/sub
index 35d242b..8422d40 100644
@ -66,8 +63,7 @@ From: A U Thor <author@example.com> @@ -66,8 +63,7 @@ From: A U Thor <author@example.com>
Date: Mon, 26 Jun 2006 00:02:00 +0000
Subject: [PATCH] Third
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="------------g-i-t--v-e-r-s-i-o-n"
Content-Type: multipart/mixed; boundary="------------g-i-t--v-e-r-s-i-o-n"

This is a multi-part message in MIME format.
--------------g-i-t--v-e-r-s-i-o-n
@ -80,11 +76,9 @@ Content-Transfer-Encoding: 8bit @@ -80,11 +76,9 @@ Content-Transfer-Encoding: 8bit
2 files changed, 5 insertions(+), 0 deletions(-)
create mode 100644 file1
--------------g-i-t--v-e-r-s-i-o-n
Content-Type: text/x-patch;
name="9a6d4949b6b76956d9d5e26f2791ec2ceff5fdc0.diff"
Content-Type: text/x-patch; name="9a6d4949b6b76956d9d5e26f2791ec2ceff5fdc0.diff"
Content-Transfer-Encoding: 8bit
Content-Disposition: attachment;
filename="9a6d4949b6b76956d9d5e26f2791ec2ceff5fdc0.diff"
Content-Disposition: attachment; filename="9a6d4949b6b76956d9d5e26f2791ec2ceff5fdc0.diff"

diff --git a/dir/sub b/dir/sub
index 8422d40..cead32e 100644
@ -115,8 +109,7 @@ From: A U Thor <author@example.com> @@ -115,8 +109,7 @@ From: A U Thor <author@example.com>
Date: Mon, 26 Jun 2006 00:03:00 +0000
Subject: [PATCH] Side
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="------------g-i-t--v-e-r-s-i-o-n"
Content-Type: multipart/mixed; boundary="------------g-i-t--v-e-r-s-i-o-n"

This is a multi-part message in MIME format.
--------------g-i-t--v-e-r-s-i-o-n
@ -130,11 +123,9 @@ Content-Transfer-Encoding: 8bit @@ -130,11 +123,9 @@ Content-Transfer-Encoding: 8bit
3 files changed, 9 insertions(+), 0 deletions(-)
create mode 100644 file3
--------------g-i-t--v-e-r-s-i-o-n
Content-Type: text/x-patch;
name="c7a2ab9e8eac7b117442a607d5a9b3950ae34d5a.diff"
Content-Type: text/x-patch; name="c7a2ab9e8eac7b117442a607d5a9b3950ae34d5a.diff"
Content-Transfer-Encoding: 8bit
Content-Disposition: attachment;
filename="c7a2ab9e8eac7b117442a607d5a9b3950ae34d5a.diff"
Content-Disposition: attachment; filename="c7a2ab9e8eac7b117442a607d5a9b3950ae34d5a.diff"

diff --git a/dir/sub b/dir/sub
index 35d242b..7289e35 100644

18
t/t4013/diff.format-patch_--attach_--stdout_initial..master^

@ -4,8 +4,7 @@ From: A U Thor <author@example.com> @@ -4,8 +4,7 @@ From: A U Thor <author@example.com>
Date: Mon, 26 Jun 2006 00:01:00 +0000
Subject: [PATCH] Second
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="------------g-i-t--v-e-r-s-i-o-n"
Content-Type: multipart/mixed; boundary="------------g-i-t--v-e-r-s-i-o-n"

This is a multi-part message in MIME format.
--------------g-i-t--v-e-r-s-i-o-n
@ -21,11 +20,9 @@ This is the second commit. @@ -21,11 +20,9 @@ This is the second commit.
3 files changed, 5 insertions(+), 3 deletions(-)
delete mode 100644 file2
--------------g-i-t--v-e-r-s-i-o-n
Content-Type: text/x-patch;
name="1bde4ae5f36c8d9abe3a0fce0c6aab3c4a12fe44.diff"
Content-Type: text/x-patch; name="1bde4ae5f36c8d9abe3a0fce0c6aab3c4a12fe44.diff"
Content-Transfer-Encoding: 8bit
Content-Disposition: attachment;
filename="1bde4ae5f36c8d9abe3a0fce0c6aab3c4a12fe44.diff"
Content-Disposition: attachment; filename="1bde4ae5f36c8d9abe3a0fce0c6aab3c4a12fe44.diff"

diff --git a/dir/sub b/dir/sub
index 35d242b..8422d40 100644
@ -66,8 +63,7 @@ From: A U Thor <author@example.com> @@ -66,8 +63,7 @@ From: A U Thor <author@example.com>
Date: Mon, 26 Jun 2006 00:02:00 +0000
Subject: [PATCH] Third
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="------------g-i-t--v-e-r-s-i-o-n"
Content-Type: multipart/mixed; boundary="------------g-i-t--v-e-r-s-i-o-n"

This is a multi-part message in MIME format.
--------------g-i-t--v-e-r-s-i-o-n
@ -80,11 +76,9 @@ Content-Transfer-Encoding: 8bit @@ -80,11 +76,9 @@ Content-Transfer-Encoding: 8bit
2 files changed, 5 insertions(+), 0 deletions(-)
create mode 100644 file1
--------------g-i-t--v-e-r-s-i-o-n
Content-Type: text/x-patch;
name="9a6d4949b6b76956d9d5e26f2791ec2ceff5fdc0.diff"
Content-Type: text/x-patch; name="9a6d4949b6b76956d9d5e26f2791ec2ceff5fdc0.diff"
Content-Transfer-Encoding: 8bit
Content-Disposition: attachment;
filename="9a6d4949b6b76956d9d5e26f2791ec2ceff5fdc0.diff"
Content-Disposition: attachment; filename="9a6d4949b6b76956d9d5e26f2791ec2ceff5fdc0.diff"

diff --git a/dir/sub b/dir/sub
index 8422d40..cead32e 100644

9
t/t4013/diff.format-patch_--attach_--stdout_initial..side

@ -4,8 +4,7 @@ From: A U Thor <author@example.com> @@ -4,8 +4,7 @@ From: A U Thor <author@example.com>
Date: Mon, 26 Jun 2006 00:03:00 +0000
Subject: [PATCH] Side
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="------------g-i-t--v-e-r-s-i-o-n"
Content-Type: multipart/mixed; boundary="------------g-i-t--v-e-r-s-i-o-n"

This is a multi-part message in MIME format.
--------------g-i-t--v-e-r-s-i-o-n
@ -19,11 +18,9 @@ Content-Transfer-Encoding: 8bit @@ -19,11 +18,9 @@ Content-Transfer-Encoding: 8bit
3 files changed, 9 insertions(+), 0 deletions(-)
create mode 100644 file3
--------------g-i-t--v-e-r-s-i-o-n
Content-Type: text/x-patch;
name="c7a2ab9e8eac7b117442a607d5a9b3950ae34d5a.diff"
Content-Type: text/x-patch; name="c7a2ab9e8eac7b117442a607d5a9b3950ae34d5a.diff"
Content-Transfer-Encoding: 8bit
Content-Disposition: attachment;
filename="c7a2ab9e8eac7b117442a607d5a9b3950ae34d5a.diff"
Content-Disposition: attachment; filename="c7a2ab9e8eac7b117442a607d5a9b3950ae34d5a.diff"

diff --git a/dir/sub b/dir/sub
index 35d242b..7289e35 100644

27
t/t4013/diff.format-patch_--inline_--stdout_initial..master

@ -4,8 +4,7 @@ From: A U Thor <author@example.com> @@ -4,8 +4,7 @@ From: A U Thor <author@example.com>
Date: Mon, 26 Jun 2006 00:01:00 +0000
Subject: [PATCH] Second
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="------------g-i-t--v-e-r-s-i-o-n"
Content-Type: multipart/mixed; boundary="------------g-i-t--v-e-r-s-i-o-n"

This is a multi-part message in MIME format.
--------------g-i-t--v-e-r-s-i-o-n
@ -21,11 +20,9 @@ This is the second commit. @@ -21,11 +20,9 @@ This is the second commit.
3 files changed, 5 insertions(+), 3 deletions(-)
delete mode 100644 file2
--------------g-i-t--v-e-r-s-i-o-n
Content-Type: text/x-patch;
name="1bde4ae5f36c8d9abe3a0fce0c6aab3c4a12fe44.diff"
Content-Type: text/x-patch; name="1bde4ae5f36c8d9abe3a0fce0c6aab3c4a12fe44.diff"
Content-Transfer-Encoding: 8bit
Content-Disposition: inline;
filename="1bde4ae5f36c8d9abe3a0fce0c6aab3c4a12fe44.diff"
Content-Disposition: inline; filename="1bde4ae5f36c8d9abe3a0fce0c6aab3c4a12fe44.diff"

diff --git a/dir/sub b/dir/sub
index 35d242b..8422d40 100644
@ -66,8 +63,7 @@ From: A U Thor <author@example.com> @@ -66,8 +63,7 @@ From: A U Thor <author@example.com>
Date: Mon, 26 Jun 2006 00:02:00 +0000
Subject: [PATCH] Third
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="------------g-i-t--v-e-r-s-i-o-n"
Content-Type: multipart/mixed; boundary="------------g-i-t--v-e-r-s-i-o-n"

This is a multi-part message in MIME format.
--------------g-i-t--v-e-r-s-i-o-n
@ -80,11 +76,9 @@ Content-Transfer-Encoding: 8bit @@ -80,11 +76,9 @@ Content-Transfer-Encoding: 8bit
2 files changed, 5 insertions(+), 0 deletions(-)
create mode 100644 file1
--------------g-i-t--v-e-r-s-i-o-n
Content-Type: text/x-patch;
name="9a6d4949b6b76956d9d5e26f2791ec2ceff5fdc0.diff"
Content-Type: text/x-patch; name="9a6d4949b6b76956d9d5e26f2791ec2ceff5fdc0.diff"
Content-Transfer-Encoding: 8bit
Content-Disposition: inline;
filename="9a6d4949b6b76956d9d5e26f2791ec2ceff5fdc0.diff"
Content-Disposition: inline; filename="9a6d4949b6b76956d9d5e26f2791ec2ceff5fdc0.diff"

diff --git a/dir/sub b/dir/sub
index 8422d40..cead32e 100644
@ -115,8 +109,7 @@ From: A U Thor <author@example.com> @@ -115,8 +109,7 @@ From: A U Thor <author@example.com>
Date: Mon, 26 Jun 2006 00:03:00 +0000
Subject: [PATCH] Side
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="------------g-i-t--v-e-r-s-i-o-n"
Content-Type: multipart/mixed; boundary="------------g-i-t--v-e-r-s-i-o-n"

This is a multi-part message in MIME format.
--------------g-i-t--v-e-r-s-i-o-n
@ -130,11 +123,9 @@ Content-Transfer-Encoding: 8bit @@ -130,11 +123,9 @@ Content-Transfer-Encoding: 8bit
3 files changed, 9 insertions(+), 0 deletions(-)
create mode 100644 file3
--------------g-i-t--v-e-r-s-i-o-n
Content-Type: text/x-patch;
name="c7a2ab9e8eac7b117442a607d5a9b3950ae34d5a.diff"
Content-Type: text/x-patch; name="c7a2ab9e8eac7b117442a607d5a9b3950ae34d5a.diff"
Content-Transfer-Encoding: 8bit
Content-Disposition: inline;
filename="c7a2ab9e8eac7b117442a607d5a9b3950ae34d5a.diff"
Content-Disposition: inline; filename="c7a2ab9e8eac7b117442a607d5a9b3950ae34d5a.diff"

diff --git a/dir/sub b/dir/sub
index 35d242b..7289e35 100644

18
t/t4013/diff.format-patch_--inline_--stdout_initial..master^

@ -4,8 +4,7 @@ From: A U Thor <author@example.com> @@ -4,8 +4,7 @@ From: A U Thor <author@example.com>
Date: Mon, 26 Jun 2006 00:01:00 +0000
Subject: [PATCH] Second
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="------------g-i-t--v-e-r-s-i-o-n"
Content-Type: multipart/mixed; boundary="------------g-i-t--v-e-r-s-i-o-n"

This is a multi-part message in MIME format.
--------------g-i-t--v-e-r-s-i-o-n
@ -21,11 +20,9 @@ This is the second commit. @@ -21,11 +20,9 @@ This is the second commit.
3 files changed, 5 insertions(+), 3 deletions(-)
delete mode 100644 file2
--------------g-i-t--v-e-r-s-i-o-n
Content-Type: text/x-patch;
name="1bde4ae5f36c8d9abe3a0fce0c6aab3c4a12fe44.diff"
Content-Type: text/x-patch; name="1bde4ae5f36c8d9abe3a0fce0c6aab3c4a12fe44.diff"
Content-Transfer-Encoding: 8bit
Content-Disposition: inline;
filename="1bde4ae5f36c8d9abe3a0fce0c6aab3c4a12fe44.diff"
Content-Disposition: inline; filename="1bde4ae5f36c8d9abe3a0fce0c6aab3c4a12fe44.diff"

diff --git a/dir/sub b/dir/sub
index 35d242b..8422d40 100644
@ -66,8 +63,7 @@ From: A U Thor <author@example.com> @@ -66,8 +63,7 @@ From: A U Thor <author@example.com>
Date: Mon, 26 Jun 2006 00:02:00 +0000
Subject: [PATCH] Third
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="------------g-i-t--v-e-r-s-i-o-n"
Content-Type: multipart/mixed; boundary="------------g-i-t--v-e-r-s-i-o-n"

This is a multi-part message in MIME format.
--------------g-i-t--v-e-r-s-i-o-n
@ -80,11 +76,9 @@ Content-Transfer-Encoding: 8bit @@ -80,11 +76,9 @@ Content-Transfer-Encoding: 8bit
2 files changed, 5 insertions(+), 0 deletions(-)
create mode 100644 file1
--------------g-i-t--v-e-r-s-i-o-n
Content-Type: text/x-patch;
name="9a6d4949b6b76956d9d5e26f2791ec2ceff5fdc0.diff"
Content-Type: text/x-patch; name="9a6d4949b6b76956d9d5e26f2791ec2ceff5fdc0.diff"
Content-Transfer-Encoding: 8bit
Content-Disposition: inline;
filename="9a6d4949b6b76956d9d5e26f2791ec2ceff5fdc0.diff"
Content-Disposition: inline; filename="9a6d4949b6b76956d9d5e26f2791ec2ceff5fdc0.diff"

diff --git a/dir/sub b/dir/sub
index 8422d40..cead32e 100644

9
t/t4013/diff.format-patch_--inline_--stdout_initial..side

@ -4,8 +4,7 @@ From: A U Thor <author@example.com> @@ -4,8 +4,7 @@ From: A U Thor <author@example.com>
Date: Mon, 26 Jun 2006 00:03:00 +0000
Subject: [PATCH] Side
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="------------g-i-t--v-e-r-s-i-o-n"
Content-Type: multipart/mixed; boundary="------------g-i-t--v-e-r-s-i-o-n"

This is a multi-part message in MIME format.
--------------g-i-t--v-e-r-s-i-o-n
@ -19,11 +18,9 @@ Content-Transfer-Encoding: 8bit @@ -19,11 +18,9 @@ Content-Transfer-Encoding: 8bit
3 files changed, 9 insertions(+), 0 deletions(-)
create mode 100644 file3
--------------g-i-t--v-e-r-s-i-o-n
Content-Type: text/x-patch;
name="c7a2ab9e8eac7b117442a607d5a9b3950ae34d5a.diff"
Content-Type: text/x-patch; name="c7a2ab9e8eac7b117442a607d5a9b3950ae34d5a.diff"
Content-Transfer-Encoding: 8bit
Content-Disposition: inline;
filename="c7a2ab9e8eac7b117442a607d5a9b3950ae34d5a.diff"
Content-Disposition: inline; filename="c7a2ab9e8eac7b117442a607d5a9b3950ae34d5a.diff"

diff --git a/dir/sub b/dir/sub
index 35d242b..7289e35 100644

Loading…
Cancel
Save