From 0e4fa1d6db78dca1da7ce9673cca5a00062b63b2 Mon Sep 17 00:00:00 2001 From: starnakin Date: Wed, 5 Jul 2023 00:23:04 +0200 Subject: [PATCH] clean: create function to not repeat code --- src/alias/alias.c | 23 +++++++++++++++-------- src/alias/alias.h | 1 + src/builtin-exec/builtin_alias.c | 12 ------------ 3 files changed, 16 insertions(+), 20 deletions(-) diff --git a/src/alias/alias.c b/src/alias/alias.c index af5b39f..fd91564 100644 --- a/src/alias/alias.c +++ b/src/alias/alias.c @@ -112,11 +112,23 @@ void alias_del(void *ptr) free(alias->value); free(alias); } + +void print_aliases(lst** aliases, int fd_out) +{ + lst* current = *aliases; + alias_t* content; + + while (current != NULL) + { + content = current->content; + dprintf(fd_out, "%s='%s'\n", content->key, content->value); + current = current->next; + } +} + int alias_save(lst** aliases, lst** env) { int fd; - alias_t* content; - lst* current = *aliases; char* file_path = get_zzsh_aliases(env); fd = open(file_path, O_WRONLY); if (fd == -1) @@ -124,11 +136,6 @@ int alias_save(lst** aliases, lst** env) dprintf(2, "Une erreur est survenue lors de l'écriture des aliases\n"); return 1; } - while(current != NULL) - { - content = current->content; - dprintf(fd, "%s=%s\n", content->key, content->value); - current = current->next; - } + print_aliases(aliases, fd); return 0; } diff --git a/src/alias/alias.h b/src/alias/alias.h index 9710535..5dd25de 100644 --- a/src/alias/alias.h +++ b/src/alias/alias.h @@ -11,6 +11,7 @@ typedef struct s_alias lst** aliases_init(); lst** aliases_save(lst** aliases); void alias_del(void *ptr); +void print_aliases(lst** aliases, int fd_out); char* get_alias(lst** aliases, const char* key); int add_alias(lst** root, const char* key, const char* value); int alias_save(lst** aliases, lst** env); diff --git a/src/builtin-exec/builtin_alias.c b/src/builtin-exec/builtin_alias.c index 2d686d0..4db342c 100644 --- a/src/builtin-exec/builtin_alias.c +++ b/src/builtin-exec/builtin_alias.c @@ -3,18 +3,6 @@ #include #include -static void print_aliases(lst** aliases, int fd_out) -{ - lst* current = *aliases; - alias_t* content; - - while (current != NULL) - { - content = current->content; - dprintf(fd_out, "%s='%s'\n", content->key, content->value); - current = current->next; - } -} int builtin_alias(data_t* data, cmd_t* cmd) { const char* equal;