summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Thiessen <alex.thiessen.de+coreboot@gmail.com>2018-01-03 08:12:39 +0000
committerNico Huber <nico.h@gmx.de>2018-01-04 13:53:03 +0000
commitceb7788c8043021a66fd9e0fe55dfe226f742f70 (patch)
tree89d55b73536ce2bd8283430830bc060901d18f4d
parent6fc39d47d017409a30239a031b16413e30700452 (diff)
downloadcoreboot-ceb7788c8043021a66fd9e0fe55dfe226f742f70.tar.xz
util/gitconfig: Support dash in pre-commit hook
On debian systems, /bin/sh is `dash` which has built-in `echo` always interpreting escape sequences such as '\n'. The pre-commit hook uses the built-in for piping diff to checkpatch, interpreting the diff's escape sequences in the process and leading to false negatives and preventing commits despite conformance. Use `printf` instead of `echo` when handling diff content. The bug was introduced in commit ef869305 (util/gitconfig: update pre-commit script). Change-Id: I37edfe7b32721cb63d99299563cb11f26082c9a9 Signed-off-by: Alex Thiessen <alex.thiessen.de+coreboot@gmail.com> Reviewed-on: https://review.coreboot.org/23070 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Martin Roth <martinroth@google.com> Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
-rwxr-xr-xutil/gitconfig/pre-commit4
1 files changed, 2 insertions, 2 deletions
diff --git a/util/gitconfig/pre-commit b/util/gitconfig/pre-commit
index 257f6964bb..1c04bc34e9 100755
--- a/util/gitconfig/pre-commit
+++ b/util/gitconfig/pre-commit
@@ -2,8 +2,8 @@
%MAKE% lint-stable
PATCHDIFF=$(git diff --cached)
-if echo "$PATCHDIFF" | grep -q "@@"; then
+if printf "%s\n" "$PATCHDIFF" | grep -q "@@"; then
echo
echo "Running checkpatch"
- echo "$PATCHDIFF" | util/lint/checkpatch.pl --no-signoff -q -
+ printf "%s\n" "$PATCHDIFF" | util/lint/checkpatch.pl --no-signoff -q -
fi