Merge branch 'us/printf-not-echo' into maint
authorJunio C Hamano <gitster@pobox.com>
Thu, 3 Apr 2014 20:39:04 +0000 (13:39 -0700)
committerJunio C Hamano <gitster@pobox.com>
Thu, 3 Apr 2014 20:39:04 +0000 (13:39 -0700)
* us/printf-not-echo:
test-lib.sh: do not "echo" caller-supplied strings
rebase -i: do not "echo" random user-supplied strings

git-rebase--interactive.sh
t/test-lib.sh
index 43c19e0829ca727501ba7e4d29c952bc286ccb77..43631b472311d0feb13f4d62c6355baeedbdb040 100644 (file)
@@ -739,7 +739,7 @@ rearrange_squash () {
                                        ;;
                                esac
                        done
-                       echo "$sha1 $action $prefix $rest"
+                       printf '%s %s %s %s\n' "$sha1" "$action" "$prefix" "$rest"
                        # if it's a single word, try to resolve to a full sha1 and
                        # emit a second copy. This allows us to match on both message
                        # and on sha1 prefix
index 1531c241c08f0fad1a8e0789dbed2675b0fe5e56..3c7cb1d774cadaa4d625e2d53ba122db4108cb0e 100644 (file)
@@ -277,7 +277,7 @@ error "Test script did not set test_description."
 
 if test "$help" = "t"
 then
-       echo "$test_description"
+       printf '%s\n' "$test_description"
        exit 0
 fi
 
@@ -328,7 +328,7 @@ test_failure_ () {
        test_failure=$(($test_failure + 1))
        say_color error "not ok $test_count - $1"
        shift
-       echo "$@" | sed -e 's/^/#       /'
+       printf '%s\n' "$*" | sed -e 's/^/#      /'
        test "$immediate" = "" || { GIT_EXIT_OK=t; exit 1; }
 }