#include "process.h" #include "err.h" #include "log.h" #include #include int spawn(char **argv) { pid_t pid; if (!argv[0] || *argv[0] == '\0') { log_write(LOG_ERR, "Invalid argv"); return -1; } if ((pid = fork()) < 0) { log_write(LOG_ERR, "fork error"); } else if (pid == 0) { if (execvp(argv[0], argv) < 0) { die("exec error"); } } else { wait(NULL); } return 0; }