aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xgit-am.sh2
-rwxr-xr-xt/t4252-am-options.sh8
2 files changed, 9 insertions, 1 deletions
diff --git a/git-am.sh b/git-am.sh
index 7e6329b14..4beb12dcf 100755
--- a/git-am.sh
+++ b/git-am.sh
@@ -38,7 +38,7 @@ sq () {
for sqarg
do
printf "%s" "$sqarg" |
- sed -e 's/'\''/'\''\'\'''\''/g' -e 's/.*/ '\''&'\''/'
+ sed -e 's/'\''/'\''\\'\'''\''/g' -e 's/.*/ '\''&'\''/'
done
}
diff --git a/t/t4252-am-options.sh b/t/t4252-am-options.sh
index e91a6da0d..5fdd18858 100755
--- a/t/t4252-am-options.sh
+++ b/t/t4252-am-options.sh
@@ -58,4 +58,12 @@ test_expect_success 'interrupted am --directory="frotz nitfol"' '
grep One "frotz nitfol/file-5"
'
+test_expect_success 'apply to a funny path' '
+ with_sq="with'\''sq"
+ rm -fr .git/rebase-apply &&
+ git reset --hard initial &&
+ git am --directory="$with_sq" "$tm"/am-test-5-2 &&
+ test -f "$with_sq/file-5"
+'
+
test_done