diff options
author | Niklas Halle <niklas@niklashalle.net> | 2020-05-24 12:58:25 +0200 |
---|---|---|
committer | Niklas Halle <niklas@niklashalle.net> | 2020-05-24 12:58:25 +0200 |
commit | bed31a7634701b2c19ef8eef3ccb3039c03b1cda (patch) | |
tree | 50352a24134173031603c168b4b9a574fd551fe8 /02_exercise/shell.c | |
parent | 32db24465d74f99409a182bd07140231f65a13e3 (diff) | |
download | betriebssysteme-bed31a7634701b2c19ef8eef3ccb3039c03b1cda.tar.gz betriebssysteme-bed31a7634701b2c19ef8eef3ccb3039c03b1cda.zip |
minor changes
Diffstat (limited to '02_exercise/shell.c')
-rw-r--r-- | 02_exercise/shell.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/02_exercise/shell.c b/02_exercise/shell.c index f456465..d1e52ec 100644 --- a/02_exercise/shell.c +++ b/02_exercise/shell.c @@ -28,19 +28,20 @@ int main(void) { } if (strspn(line, " \n\t") == strlen(line)) { + // skip empty lines - empty being just spaces or tabs continue; } 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) { - - if(arrayLen(processes) != 1) { + if (arrayLen(processes) != 1) { perror("Can't chain cd with other processes"); } + if (arrayLen(processes[0].argv) != 3) { fprintf(stderr, "usage: cd <path>"); goto clean; @@ -57,9 +58,8 @@ int main(void) { } else if (strcmp(processes[0].argv[0], "exit") == 0) { done = true; } else { - int ret; for (size_t i = 0; i < arrayLen(processes); ++i) { - ret = exec_command(processes[i]); + int ret = exec_command(processes[i]); if (ret) printf("[%i] ", ret); } |