diff options
-rw-r--r-- | Makefile | 6 | ||||
-rwxr-xr-x | git-send-email.perl | 2 | ||||
-rw-r--r-- | index-pack.c | 4 | ||||
-rwxr-xr-x | t/t5000-tar-tree.sh | 11 |
4 files changed, 15 insertions, 8 deletions
@@ -1255,8 +1255,12 @@ GIT-CFLAGS: .FORCE-GIT-CFLAGS echo "$$FLAGS" >GIT-CFLAGS; \ fi +# We need to apply sq twice, once to protect from the shell +# that runs GIT-BUILD-OPTIONS, and then again to protect it +# and the first level quoting from the shell that runs "echo". GIT-BUILD-OPTIONS: .FORCE-GIT-BUILD-OPTIONS - @echo SHELL_PATH=\''$(SHELL_PATH_SQ)'\' >$@ + @echo SHELL_PATH=\''$(subst ','\'',$(SHELL_PATH_SQ))'\' >$@ + @echo TAR=\''$(subst ','\'',$(subst ','\'',$(TAR)))'\' >>$@ ### Detect Tck/Tk interpreter path changes ifndef NO_TCLTK diff --git a/git-send-email.perl b/git-send-email.perl index 2e4a44ad2..d2fd89907 100755 --- a/git-send-email.perl +++ b/git-send-email.perl @@ -882,7 +882,7 @@ foreach my $t (@files) { } elsif (/^Content-type:/i) { $has_content_type = 1; - if (/charset="?[^ "]+/) { + if (/charset="?([^ "]+)/) { $body_encoding = $1; } push @xh, $_; diff --git a/index-pack.c b/index-pack.c index ac20a46d1..52064befd 100644 --- a/index-pack.c +++ b/index-pack.c @@ -699,6 +699,10 @@ static struct object_entry *append_obj_to_pack( write_or_die(output_fd, header, n); obj[0].idx.crc32 = crc32(0, Z_NULL, 0); obj[0].idx.crc32 = crc32(obj[0].idx.crc32, header, n); + obj[0].size = size; + obj[0].hdr_size = n; + obj[0].type = type; + obj[0].real_type = type; obj[1].idx.offset = obj[0].idx.offset + n; obj[1].idx.offset += write_compressed(output_fd, buf, size, &obj[0].idx.crc32); hashcpy(obj->idx.sha1, sha1); diff --git a/t/t5000-tar-tree.sh b/t/t5000-tar-tree.sh index 3f1e25d92..e395ff4e3 100755 --- a/t/t5000-tar-tree.sh +++ b/t/t5000-tar-tree.sh @@ -25,7 +25,6 @@ commit id embedding: ' . ./test-lib.sh -TAR=${TAR:-tar} UNZIP=${UNZIP:-unzip} SUBSTFORMAT=%H%n @@ -77,7 +76,7 @@ test_expect_success \ test_expect_success \ 'validate file modification time' \ 'mkdir extract && - $TAR xf b.tar -C extract a/a && + "$TAR" xf b.tar -C extract a/a && perl -e '\''print((stat("extract/a/a"))[9], "\n")'\'' >b.mtime && echo "1117231200" >expected.mtime && diff expected.mtime b.mtime' @@ -89,7 +88,7 @@ test_expect_success \ test_expect_success \ 'extract tar archive' \ - '(cd b && $TAR xf -) <b.tar' + '(cd b && "$TAR" xf -) <b.tar' test_expect_success \ 'validate filenames' \ @@ -106,7 +105,7 @@ test_expect_success \ test_expect_success \ 'extract tar archive with prefix' \ - '(cd c && $TAR xf -) <c.tar' + '(cd c && "$TAR" xf -) <c.tar' test_expect_success \ 'validate filenames with prefix' \ @@ -126,7 +125,7 @@ test_expect_success \ test_expect_success \ 'extract substfiles' \ - '(mkdir f && cd f && $TAR xf -) <f.tar' + '(mkdir f && cd f && "$TAR" xf -) <f.tar' test_expect_success \ 'validate substfile contents' \ @@ -138,7 +137,7 @@ test_expect_success \ test_expect_success \ 'extract substfiles from archive with prefix' \ - '(mkdir g && cd g && $TAR xf -) <g.tar' + '(mkdir g && cd g && "$TAR" xf -) <g.tar' test_expect_success \ 'validate substfile contents from archive with prefix' \ |