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>
This commit is contained in:
parent
6fc39d47d0
commit
ceb7788c80
|
@ -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
|
||||
|
|
Loading…
Reference in New Issue