diff --git a/src/alias/alias.c b/src/alias/alias.c index 999fc37..3cd3dd7 100644 --- a/src/alias/alias.c +++ b/src/alias/alias.c @@ -59,3 +59,11 @@ char* get_alias(lst** aliases, const char* key) } return NULL; } + +void alias_del(void *ptr) +{ + alias_t *alias = ptr; + free(alias->key); + free(alias->value); + free(alias); +} diff --git a/src/alias/alias.h b/src/alias/alias.h index 8c73e54..99fb60b 100644 --- a/src/alias/alias.h +++ b/src/alias/alias.h @@ -10,5 +10,6 @@ typedef struct s_alias lst** aliases_init(); lst** aliases_save(lst** aliases); +void alias_del(void *ptr); char* get_alias(lst** aliases, const char* key); int add_alias(lst** root, const char* key, const char* value); diff --git a/src/main.c b/src/main.c index 0993289..a0b1aef 100644 --- a/src/main.c +++ b/src/main.c @@ -51,6 +51,7 @@ int main(int ac, char **av, char **env_str) } line = get_user_input(&data); } + lst_clear(data.aliases, alias_del); lst_clear(data.env, &env_del); return (0);