diff options
-rw-r--r-- | editors/sed.c | 4 | ||||
-rw-r--r-- | sed.c | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/editors/sed.c b/editors/sed.c index 6654719..60b1e8d 100644 --- a/editors/sed.c +++ b/editors/sed.c @@ -639,8 +639,8 @@ static void process_file(FILE *file) } /* are we acting on a range of line numbers? */ - else if (sed_cmds[i].beg_line > 0 && sed_cmds[i].end_line > 0) { - if (linenum >= sed_cmds[i].beg_line && linenum <= sed_cmds[i].end_line) + else if (sed_cmds[i].beg_line > 0 && sed_cmds[i].end_line != 0) { + if (linenum >= sed_cmds[i].beg_line && (sed_cmds[i].end_line == -1 || linenum <= sed_cmds[i].end_line)) line_altered += do_sed_command(&sed_cmds[i], line); } @@ -639,8 +639,8 @@ static void process_file(FILE *file) } /* are we acting on a range of line numbers? */ - else if (sed_cmds[i].beg_line > 0 && sed_cmds[i].end_line > 0) { - if (linenum >= sed_cmds[i].beg_line && linenum <= sed_cmds[i].end_line) + else if (sed_cmds[i].beg_line > 0 && sed_cmds[i].end_line != 0) { + if (linenum >= sed_cmds[i].beg_line && (sed_cmds[i].end_line == -1 || linenum <= sed_cmds[i].end_line)) line_altered += do_sed_command(&sed_cmds[i], line); } |