← Commit list

b0e9b7291

Denys Vlasenko
Denys Vlasenko
2013-07-21
FAILED Duration: 224s

Subject

sed: fix matching of newlines by $

Binary

No binary (build failed)

Architecture & Compiler Flags

Architecture: x86_64-linux-gnu Compiler: gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0

—

Build Log

(log yok)

Commit Diff GitHub →

editors/sed.c+1 -1
@@ -330,7 +330,7 @@ static int get_address(const char *my_str, int *linenum, regex_t ** regex)
next = index_of_next_unescaped_regexp_delim(delimiter, ++pos);
temp = copy_parsing_escapes(pos, next);
*regex = xzalloc(sizeof(regex_t));
- xregcomp(*regex, temp, G.regex_type|REG_NEWLINE);
+ xregcomp(*regex, temp, G.regex_type);
free(temp);
/* Move position to next character after last delimiter */
pos += (next+1);
testsuite/sed.tests+21 -0
@@ -310,6 +310,27 @@ testing "sed zero chars match/replace logic must not falsely trigger here 2" \
"sed 's/ *$/_/g'" \
"qwerty_\n" "" "qwerty\n"
+testing "sed /\$_in_regex/ should not match newlines, only end-of-line" \
+ "sed ': testcont; /\\\\$/{ =; N; b testcont }'" \
+ "\
+this is a regular line
+2
+line with \\
+continuation
+more regular lines
+5
+line with \\
+continuation
+" \
+ "" "\
+this is a regular line
+line with \\
+continuation
+more regular lines
+line with \\
+continuation
+"
+
# testing "description" "commands" "result" "infile" "stdin"
exit $FAILCOUNT