diff options
Diffstat (limited to '02_exercise/shell.c')
-rw-r--r-- | 02_exercise/shell.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/02_exercise/shell.c b/02_exercise/shell.c index eed8e64..f456465 100644 --- a/02_exercise/shell.c +++ b/02_exercise/shell.c @@ -1,17 +1,14 @@ -#include <fcntl.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #include <stdbool.h> -#include <sys/wait.h> #include "array.h" #include "process.h" #include "prompt_utils.h" - int main(void) { chdir("."); setvbuf(stdout, NULL, _IONBF, 0); @@ -36,7 +33,7 @@ int main(void) { line[length - 1] = '\0'; // cut the line feed - process * processes = NULL; + Process * processes = NULL; parse_line(line, &processes); if (strcmp(processes[0].argv[0], "cd") == 0) { @@ -62,10 +59,11 @@ int main(void) { } else { int ret; for (size_t i = 0; i < arrayLen(processes); ++i) { - ret = exec_command(processes[i], 0); + ret = exec_command(processes[i]); + if (ret) + printf("[%i] ", ret); } - if (ret) - printf("[%i] ", ret); + } clean: |