summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNiklas Halle <niklas@niklashalle.net>2020-05-21 11:38:10 +0200
committerNiklas Halle <niklas@niklashalle.net>2020-05-21 11:38:10 +0200
commit5a200f8b131917d2e6d51df50b01042ffaafa9a6 (patch)
tree26e88a437f2cdc1dd13d0cd0798c3623218aeb8f
parentddbb47ed661614d768e8ebd3b0a5084ee82b0beb (diff)
downloadbetriebssysteme-5a200f8b131917d2e6d51df50b01042ffaafa9a6.tar.gz
betriebssysteme-5a200f8b131917d2e6d51df50b01042ffaafa9a6.zip
git diffgit diff
-rw-r--r--02_exercise/shell.c13
1 files changed, 1 insertions, 12 deletions
diff --git a/02_exercise/shell.c b/02_exercise/shell.c
index 84f8aff..f48819b 100644
--- a/02_exercise/shell.c
+++ b/02_exercise/shell.c
@@ -34,23 +34,13 @@ int main(int argc, char* argv[]) {
size_t argument_count;
parse_line(line, &exe, &arguments, &argument_count);
- for (size_t h = 0; h < argument_count; ++h) {
- char *part;
- part = arrayPop(arguments);
- if (part == NULL)
- continue;
- printf("%s\n", part);
- }
-
- exit(0);
-
if (strcmp(exe, "cd") == 0) {
printf("Changing dirs \n");
chdir("beispiele");
} else if (strcmp(exe, "exit") == 0) {
exit(0);
} else {
- exec_command(exe, (char *const []) {exe, NULL}, 0);
+ exec_command(exe, arguments, 0);
}
free((void *)line);
// no need to free exe, since it is part of arguments any way
@@ -81,7 +71,6 @@ int parse_line(char const *line, char **exe, char ***parts, size_t *part_count)
strcpy(*exe, part);
found_exe = true;
}
- arrayRelease(part); // TODO: am i supposed/allowed to free it here?
arrayInit(part);
if (c == '\0') {
arrayPush(local_parts) = NULL;