Fix from vodz so that complex init commands actually work

This commit is contained in:
Eric Andersen 2002-07-03 05:44:18 +00:00
parent 8c4025e708
commit 796446718d

View File

@ -579,9 +579,7 @@ static pid_t run(struct init_action *a)
if (strpbrk(a->command, "~`!$^&*()=|\\{}[];\"'<>?") != NULL) { if (strpbrk(a->command, "~`!$^&*()=|\\{}[];\"'<>?") != NULL) {
cmd[0] = SHELL; cmd[0] = SHELL;
cmd[1] = "-c"; cmd[1] = "-c";
strcpy(buf, "exec "); snprintf(buf, sizeof(buf), "exec %s", a->command);
safe_strncpy(buf + sizeof("exec "), a->command,
sizeof(buf) - sizeof("exec "));
cmd[2] = buf; cmd[2] = buf;
cmd[3] = NULL; cmd[3] = NULL;
} else { } else {