summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Johnsen <chris_johnsen@pobox.com>2010-09-17 16:42:51 -0500
committerJunio C Hamano <gitster@pobox.com>2010-09-17 14:58:08 -0700
commit14d872987a270f383e20dc183f4a960cca0f0f36 (patch)
treed549ab51029bb2e91187dcdf706aa7f0b9fa1fde
parent84d694027fbecfc61683aa584725491bf614b5e1 (diff)
downloadgit-14d872987a270f383e20dc183f4a960cca0f0f36.tar.gz
git-rebase--interactive.sh: replace cut with ${v%% *}
Some versions of cut do not cope well with lines that do not end in an LF. In this case, we can completely avoid cut by using the ${var%% *} parameter expansion (suggested by Brandon Casey). I found this problem when t3404's "avoid unnecessary reset" failed due to the "rebase -i" not avoiding updating the tested timestamp. On a Mac OS X 10.4.11 system: % printf '%s' 'foo bar' | /usr/bin/cut -d ' ' -f 1 cut: stdin: Illegal byte sequence Signed-off-by: Chris Johnsen <chris_johnsen@pobox.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rwxr-xr-xgit-rebase--interactive.sh2
1 files changed, 1 insertions, 1 deletions
diff --git a/git-rebase--interactive.sh b/git-rebase--interactive.sh
index eb2dff55f8..a27952d9fd 100755
--- a/git-rebase--interactive.sh
+++ b/git-rebase--interactive.sh
@@ -626,7 +626,7 @@ skip_unnecessary_picks () {
case "$fd,$command" in
3,pick|3,p)
# pick a commit whose parent is current $ONTO -> skip
- sha1=$(printf '%s' "$rest" | cut -d ' ' -f 1)
+ sha1=${rest%% *}
case "$(git rev-parse --verify --quiet "$sha1"^)" in
"$ONTO"*)
ONTO=$sha1