aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--editors/sed.c5
-rw-r--r--sed.c5
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)
diff --git a/sed.c b/sed.c
index 1eea128d5..115783f09 100644
--- a/sed.c
+++ b/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)