diff options
author | Denis Vlasenko <vda.linux@googlemail.com> | 2008-02-28 20:59:01 +0300 |
---|---|---|
committer | Denis Vlasenko <vda.linux@googlemail.com> | 2008-02-28 20:59:01 +0300 |
commit | f39c7c0c86d9f263f372be7c305bffa51af3c21e (patch) | |
tree | 2cc58af337e3c01d04ad27126a890422af2283f6 /editors | |
parent | cd174d1f31632884b717eba69048d338605e7e70 (diff) |
sed: n cmd must reset "we had successful subst" flag. closes bug 1214.
Diffstat (limited to 'editors')
-rw-r--r-- | editors/sed.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/editors/sed.c b/editors/sed.c index e55bcafc4..c2b9e94b6 100644 --- a/editors/sed.c +++ b/editors/sed.c @@ -865,7 +865,7 @@ static void process_files(void) next_line = get_next_line(&next_gets_char); /* go through every line in each file */ -again: + again: substituted = 0; /* Advance to next line. Stop if out of lines. */ @@ -877,7 +877,7 @@ again: * the '$' address */ next_line = get_next_line(&next_gets_char); linenum++; -restart: + restart: /* for every line, go through all the commands */ for (sed_cmd = G.sed_cmd_head.next; sed_cmd; sed_cmd = sed_cmd->next) { int old_matched, matched; @@ -1053,6 +1053,7 @@ restart: pattern_space = next_line; last_gets_char = next_gets_char; next_line = get_next_line(&next_gets_char); + substituted = 0; linenum++; break; } |