diff options
author | Mark Whitley <markw@lineo.com> | 2000-07-14 04:13:52 +0400 |
---|---|---|
committer | Mark Whitley <markw@lineo.com> | 2000-07-14 04:13:52 +0400 |
commit | 02008346c0e278701945652cd5fac5239c96891c (patch) | |
tree | 5d84a2fcec7a8297e5426f92590bd4b22b65b9b9 | |
parent | 94074a980c3f72e3765fcb43f1056b509ec800b5 (diff) |
Added error checking for edit commands; only a beginning address can be
specified.
-rw-r--r-- | editors/sed.c | 5 | ||||
-rw-r--r-- | sed.c | 5 |
2 files changed, 8 insertions, 2 deletions
diff --git a/editors/sed.c b/editors/sed.c index 1eea128d5..115783f09 100644 --- a/editors/sed.c +++ b/editors/sed.c @@ -361,8 +361,11 @@ static void parse_cmd_str(struct sed_cmd *sed_cmd, const char *cmdstr) parse_subst_cmd(sed_cmd, &cmdstr[idx]); /* special-case handling for (a)ppend, (i)nsert, and (c)hange */ - if (strchr("aic", cmdstr[idx])) + if (strchr("aic", cmdstr[idx])) { + if (sed_cmd->end_line || sed_cmd->end_match) + fatalError("only a beginning address can be specified for edit commands\n"); parse_edit_cmd(sed_cmd, &cmdstr[idx]); + } } static void add_cmd_str(const char *cmdstr) @@ -361,8 +361,11 @@ static void parse_cmd_str(struct sed_cmd *sed_cmd, const char *cmdstr) parse_subst_cmd(sed_cmd, &cmdstr[idx]); /* special-case handling for (a)ppend, (i)nsert, and (c)hange */ - if (strchr("aic", cmdstr[idx])) + if (strchr("aic", cmdstr[idx])) { + if (sed_cmd->end_line || sed_cmd->end_match) + fatalError("only a beginning address can be specified for edit commands\n"); parse_edit_cmd(sed_cmd, &cmdstr[idx]); + } } static void add_cmd_str(const char *cmdstr) |