diff options
author | pfg <pfg@FreeBSD.org> | 2015-01-08 03:44:54 +0000 |
---|---|---|
committer | pfg <pfg@FreeBSD.org> | 2015-01-08 03:44:54 +0000 |
commit | 881f69699c38b25568fa51a3937070d03607e2c7 (patch) | |
tree | 06c7c420992f2695435faf93bddd7a6d96eab161 /usr.bin/patch/pch.c | |
parent | 355ebe62bd2ba0d8fc02e3d12cb6d8e651895006 (diff) | |
download | FreeBSD-src-881f69699c38b25568fa51a3937070d03607e2c7.zip FreeBSD-src-881f69699c38b25568fa51a3937070d03607e2c7.tar.gz |
MFC r276218:
patch: Bring in xstrdup and use it when appropriate.
The function savestr allows NULL return values during Plan A patching so in
case of out of memory conditions, Plan B can step in. In many cases, NULL
value is not properly handled, so use xstrdup here (it's outside Plan A/B
patching, which means that even Plan B relies on successful operations).
Clean up some whitespaces while here
Obtained from: OpenBSD
Diffstat (limited to 'usr.bin/patch/pch.c')
-rw-r--r-- | usr.bin/patch/pch.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/usr.bin/patch/pch.c b/usr.bin/patch/pch.c index bb4a688..aacafc8 100644 --- a/usr.bin/patch/pch.c +++ b/usr.bin/patch/pch.c @@ -205,14 +205,14 @@ there_is_another_patch(void) while (filearg[0] == NULL) { if (force || batch) { say("No file to patch. Skipping...\n"); - filearg[0] = savestr(bestguess); + filearg[0] = xstrdup(bestguess); skip_rest_of_patch = true; return true; } ask("File to patch: "); if (*buf != '\n') { free(bestguess); - bestguess = savestr(buf); + bestguess = xstrdup(buf); filearg[0] = fetchname(buf, &exists, 0); } if (!exists) { @@ -319,7 +319,7 @@ intuit_diff_type(void) else if (strnEQ(s, "Prereq:", 7)) { for (t = s + 7; isspace((unsigned char)*t); t++) ; - revision = savestr(t); + revision = xstrdup(t); for (t = revision; *t && !isspace((unsigned char)*t); t++) ; @@ -403,7 +403,7 @@ scan_exit: free(bestguess); bestguess = NULL; if (filearg[0] != NULL) - bestguess = savestr(filearg[0]); + bestguess = xstrdup(filearg[0]); else if (!ok_to_create_file) { /* * We don't want to create a new file but we need a @@ -1505,7 +1505,7 @@ posix_name(const struct file_name *names, bool assume_exists) path = names[NEW_FILE].path; } - return path ? savestr(path) : NULL; + return path ? xstrdup(path) : NULL; } static char * @@ -1571,7 +1571,7 @@ best_name(const struct file_name *names, bool assume_exists) best = names[NEW_FILE].path; } - return best ? savestr(best) : NULL; + return best ? xstrdup(best) : NULL; } static size_t @@ -1613,7 +1613,7 @@ strtolinenum(char *nptr, char **endptr) if (errstr != NULL) fatal("invalid line number at line %ld: `%s' is %s\n", p_input_line, nptr, errstr); - + *p = c; *endptr = p; |