--- grep-2.5.1a/src/grep.c.empty-pattern 2006-11-22 19:05:43.000000000 +0000
+++ grep-2.5.1a/src/grep.c 2006-11-22 19:22:04.000000000 +0000
@@ -1667,9 +1667,6 @@
out_invert ^= 1;
match_lines = match_words = 0;
}
- else
- /* Strip trailing newline. */
- --keycc;
}
else
if (optind < argc)
--- grep-2.5.1a/src/search.c.empty-pattern 2006-11-22 19:21:11.000000000 +0000
+++ grep-2.5.1a/src/search.c 2006-11-22 19:35:06.000000000 +0000
@@ -204,6 +204,10 @@
motif = sep;
} while (sep && total != 0);
+ /* Strip trailing newline. */
+ if (size && pattern[size - 1] == '\n')
+ size--;
+
/* In the match_words and match_lines cases, we use a different pattern
for the DFA matcher that will quickly throw out cases that won't work.
Then if DFA succeeds we do some hairy stuff using the regex matcher
@@ -288,6 +292,10 @@
motif = sep;
} while (sep && total != 0);
+ /* Strip trailing newline. */
+ if (size && pattern[size - 1] == '\n')
+ size--;
+
/* In the match_words and match_lines cases, we use a different pattern
for the DFA matcher that will quickly throw out cases that won't work.
Then if DFA succeeds we do some hairy stuff using the regex matcher