From 1f2788afe9f02d6d511259d1b416b54b56461dd7 Mon Sep 17 00:00:00 2001
From: markw <markw@69ca8d6d-28ef-0310-b511-8ec308f3f277>
Date: Fri, 14 Jul 2000 00:49:59 +0000
Subject: It dawned on me that I would need to grow a char buffer one extra
 char bigger to accomodate a trailing '\n'ewline that I append to it later
 one. This is only necessary for the case of one inserted, appended, or
 changed line, but it's still necessary.

git-svn-id: svn://busybox.net/trunk/busybox@845 69ca8d6d-28ef-0310-b511-8ec308f3f277
---
 sed.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

(limited to 'sed.c')

diff --git a/sed.c b/sed.c
index 115783f09..770a56eeb 100644
--- a/sed.c
+++ b/sed.c
@@ -309,7 +309,10 @@ static void parse_edit_cmd(struct sed_cmd *sed_cmd, const char *editstr)
 		fatalError("bad format in edit expression\n");
 
 	/* store the edit line text */
-	sed_cmd->editline = strdup(&editstr[3]);
+	/* make editline big enough to accomodate the extra '\n' we will tack on
+	 * to the end */
+	sed_cmd->editline = xmalloc(strlen(&editstr[3]) + 2);
+	strcpy(sed_cmd->editline, &editstr[3]);
 	ptr = sed_cmd->editline;
 
 	/* now we need to go through * and: s/\\[\r\n]$/\n/g on the edit line */
-- 
cgit v1.2.3-55-g6feb