start-stop-daemon: convert snprintf calls to xasprintf

This commit is contained in:
William Hubbs 2018-06-19 17:46:12 -05:00
parent be7ad06d4a
commit f9d41243d8

View File

@ -167,20 +167,20 @@ handle_signal(int sig)
{ {
int status; int status;
int serrno = errno; int serrno = errno;
char signame[10] = { '\0' }; char *signame = NULL;
switch (sig) { switch (sig) {
case SIGINT: case SIGINT:
if (!signame[0]) if (!signame)
snprintf(signame, sizeof(signame), "SIGINT"); xasprintf(&signame, "SIGINT");
/* FALLTHROUGH */ /* FALLTHROUGH */
case SIGTERM: case SIGTERM:
if (!signame[0]) if (!signame)
snprintf(signame, sizeof(signame), "SIGTERM"); xasprintf(&signame, "SIGTERM");
/* FALLTHROUGH */ /* FALLTHROUGH */
case SIGQUIT: case SIGQUIT:
if (!signame[0]) if (!signame)
snprintf(signame, sizeof(signame), "SIGQUIT"); xasprintf(&signame, "SIGQUIT");
eerrorx("%s: caught %s, aborting", applet, signame); eerrorx("%s: caught %s, aborting", applet, signame);
/* NOTREACHED */ /* NOTREACHED */
@ -199,6 +199,9 @@ handle_signal(int sig)
eerror("%s: caught unknown signal %d", applet, sig); eerror("%s: caught unknown signal %d", applet, sig);
} }
/* free signame */
free(signame);
/* Restore errno */ /* Restore errno */
errno = serrno; errno = serrno;
} }
@ -207,7 +210,6 @@ static char *
expand_home(const char *home, const char *path) expand_home(const char *home, const char *path)
{ {
char *opath, *ppath, *p, *nh; char *opath, *ppath, *p, *nh;
size_t len;
struct passwd *pw; struct passwd *pw;
if (!path || *path != '~') if (!path || *path != '~')
@ -238,9 +240,7 @@ expand_home(const char *home, const char *path)
return xstrdup(home); return xstrdup(home);
} }
len = strlen(ppath) + strlen(home) + 1; xasprintf(&nh, "%s%s", home, ppath);
nh = xmalloc(len);
snprintf(nh, len, "%s%s", home, ppath);
free(opath); free(opath);
return nh; return nh;
} }