git-rebase--interactive.sh: use printf instead of echo to print commit message
authorBrandon Casey <drafnel@gmail.com>
Fri, 13 Aug 2010 20:47:35 +0000 (15:47 -0500)
committerJunio C Hamano <gitster@pobox.com>
Fri, 13 Aug 2010 21:21:22 +0000 (14:21 -0700)
Replace the echo statements that operate on $rest with printf's to restore
what was lost from 938791cd.  This avoids any mangling that XSI-conformant
echo's may introduce.

Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
git-rebase--interactive.sh

index 3b105138069ce34ca5c970a390becf912bfd3b2d..e16dbe201d2c67dad043be0ccd4965c61f8a0909 100755 (executable)
@@ -625,7 +625,7 @@ skip_unnecessary_picks () {
                case "$fd,$command" in
                3,pick|3,p)
                        # pick a commit whose parent is current $ONTO -> skip
-                       sha1=$(echo "$rest" | cut -d ' ' -f 1)
+                       sha1=$(printf '%s' "$rest" | cut -d ' ' -f 1)
                        case "$(git rev-parse --verify --quiet "$sha1"^)" in
                        "$ONTO"*)
                                ONTO=$sha1
@@ -642,7 +642,7 @@ skip_unnecessary_picks () {
                        fd=1
                        ;;
                esac
-               echo "$command${rest:+ }$rest" >&$fd
+               printf '%s\n' "$command${rest:+ }$rest" >&$fd
        done <"$TODO" >"$TODO.new" 3>>"$DONE" &&
        mv -f "$TODO".new "$TODO" &&
        case "$(peek_next_command)" in