threads / discuss / 5961

hooks--pre-commit: chomp() in cygwin perl does not strip "\r"

Subject: hooks--pre-commit: chomp() in cygwin perl does not strip "\r"

## tl;dr

One message between Oct 20, 2006 and Oct 20, 2006.

replies: 0people: 1as markdown or json

Liu Yubao· Oct 20, 2006, 06:14 UTC · lore

perl v5.8.7 built for cygwin-thread-multi-64int, its chomp() doesn't strip trailing "\r" so that pre-commit reports "trailing whitespace" for every line. ActiveState Perl v5.8.8 can strip "\r" and "\n" properly.

Changing
	if (/\s$/) {
to
	if (/[:blank:]$/) {
is also ok.
diff --git a/templates/hooks--pre-commit b/templates/hooks--pre-commit
index 723a9ef..6a55612
--- a/templates/hooks--pre-commit
+++ b/templates/hooks--pre-commit
@@ -54,7 +54,7 @@ perl -e '
         }
         if (s/^\+//) {
             $lineno++;
-           chomp;
+           s/[\r\n]+$//;
             if (/\s$/) {
                 bad_line("trailing whitespace", $_);
             }

← back to recent threads