From 4bf9f27dfb4ed6fd67a9bfc6f80e10b8c6980c85 Mon Sep 17 00:00:00 2001
From: Jeff King <peff@peff.net>
Date: Wed, 12 Mar 2008 17:41:39 -0400
Subject: [PATCH] filter-branch: use $SHELL_PATH instead of 'sh'

On some systems, 'sh' isn't very friendly. In particular,
t7003 fails on Solaris because it doesn't understand $().
Instead, use the specified SHELL_PATH to run shell code.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
---
 Makefile             | 1 +
 git-filter-branch.sh | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/Makefile b/Makefile
index bc46fd44f5..87739e7e3c 100644
--- a/Makefile
+++ b/Makefile
@@ -873,6 +873,7 @@ common-cmds.h: $(wildcard Documentation/git-*.txt)
 $(patsubst %.sh,%,$(SCRIPT_SH)) : % : %.sh
 	$(QUIET_GEN)$(RM) $@ $@+ && \
 	sed -e '1s|#!.*/sh|#!$(SHELL_PATH_SQ)|' \
+	    -e 's|@SHELL_PATH@|$(SHELL_PATH_SQ)|' \
 	    -e 's|@@PERL@@|$(PERL_PATH_SQ)|g' \
 	    -e 's/@@GIT_VERSION@@/$(GIT_VERSION)/g' \
 	    -e 's/@@NO_CURL@@/$(NO_CURL)/g' \
diff --git a/git-filter-branch.sh b/git-filter-branch.sh
index efef732202..22b6ed4a78 100755
--- a/git-filter-branch.sh
+++ b/git-filter-branch.sh
@@ -309,7 +309,7 @@ while read commit parents; do
 	sed -e '1,/^$/d' <../commit | \
 		eval "$filter_msg" > ../message ||
 			die "msg filter failed: $filter_msg"
-	sh -c "$filter_commit" "git commit-tree" \
+	@SHELL_PATH@ -c "$filter_commit" "git commit-tree" \
 		$(git write-tree) $parentstr < ../message > ../map/$commit
 done <../revs
 
-- 
2.40.0