summaryrefslogtreecommitdiffstats
path: root/02_exercise/shell.c
diff options
context:
space:
mode:
Diffstat (limited to '02_exercise/shell.c')
-rw-r--r--02_exercise/shell.c12
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: