diff options
author | Mark Whitley | 2001-03-26 16:47:57 +0000 |
---|---|---|
committer | Mark Whitley | 2001-03-26 16:47:57 +0000 |
commit | af633757d3a7c2830851446278161618141f2e54 (patch) | |
tree | 3682ab34bf3dd8351fa27e55e9ed3385b8bc6849 | |
parent | 049dc25fe77b1225d50460800b911d765f120e85 (diff) | |
download | busybox-af633757d3a7c2830851446278161618141f2e54.zip busybox-af633757d3a7c2830851446278161618141f2e54.tar.gz |
Applied patch from Anthony Towns that he posted to Debian bug tracking.
-rw-r--r-- | editors/sed.c | 5 | ||||
-rw-r--r-- | sed.c | 5 |
2 files changed, 6 insertions, 4 deletions
diff --git a/editors/sed.c b/editors/sed.c index a18f6e5..897c290 100644 --- a/editors/sed.c +++ b/editors/sed.c @@ -622,9 +622,10 @@ static void process_file(FILE *file) if (sed_cmds[i].beg_match && sed_cmds[i].end_match) { if (still_in_range || regexec(sed_cmds[i].beg_match, line, 0, NULL, 0) == 0) { line_altered += do_sed_command(&sed_cmds[i], line); - still_in_range = 1; - if (regexec(sed_cmds[i].end_match, line, 0, NULL, 0) == 0) + if (still_in_range && regexec(sed_cmds[i].end_match, line, 0, NULL, 0) == 0) still_in_range = 0; + else + still_in_range = 1; } } @@ -622,9 +622,10 @@ static void process_file(FILE *file) if (sed_cmds[i].beg_match && sed_cmds[i].end_match) { if (still_in_range || regexec(sed_cmds[i].beg_match, line, 0, NULL, 0) == 0) { line_altered += do_sed_command(&sed_cmds[i], line); - still_in_range = 1; - if (regexec(sed_cmds[i].end_match, line, 0, NULL, 0) == 0) + if (still_in_range && regexec(sed_cmds[i].end_match, line, 0, NULL, 0) == 0) still_in_range = 0; + else + still_in_range = 1; } } |