svn commit: r299279 - head/usr.bin/sed
Pedro F. Giffuni
pfg at FreeBSD.org
Mon May 9 18:53:47 UTC 2016
Author: pfg
Date: Mon May 9 18:53:46 2016
New Revision: 299279
URL: https://svnweb.freebsd.org/changeset/base/299279
Log:
Simplify redundant malloc'ing in sed -e.
When encountering an -e argument, sed currently mallocs a string to COPY
the optarg -- with '\n' appended. The appendage does not seem necessary --
indeed, the same call to add_compunit processing the sole command (given
without -e) passes the *argv verbatim: without making a copy, and without
appending newline.
This matches what is done in other BSDs.
Submitted by: Mikhail T.
PR: 195929
MFC after: 2 weeks
Modified:
head/usr.bin/sed/main.c
Modified: head/usr.bin/sed/main.c
==============================================================================
--- head/usr.bin/sed/main.c Mon May 9 17:19:17 2016 (r299278)
+++ head/usr.bin/sed/main.c Mon May 9 18:53:46 2016 (r299279)
@@ -125,7 +125,6 @@ int
main(int argc, char *argv[])
{
int c, fflag;
- char *temp_arg;
(void) setlocale(LC_ALL, "");
@@ -147,11 +146,7 @@ main(int argc, char *argv[])
break;
case 'e':
eflag = 1;
- if ((temp_arg = malloc(strlen(optarg) + 2)) == NULL)
- err(1, "malloc");
- strcpy(temp_arg, optarg);
- strcat(temp_arg, "\n");
- add_compunit(CU_STRING, temp_arg);
+ add_compunit(CU_STRING, optarg);
break;
case 'f':
fflag = 1;
More information about the svn-src-all
mailing list