diff --git a/Makefile b/Makefile index e418f5db..00c93d62 100644 --- a/Makefile +++ b/Makefile @@ -177,6 +177,6 @@ test: $(TEST_OBJECTS) $(LIBFT) @./test valgrind: $(NAME) - @valgrind --leak-check=full --show-leak-kinds=all --track-origins=yes --verbose --log-file=valgrind-out.txt ./minishell + @valgrind --leak-check=full --show-leak-kinds=all --track-origins=yes --verbose --suppressions=readline.supp --log-file=valgrind-out.txt ./minishell .PHONY: all bonus clean fclean re test diff --git a/To b/To deleted file mode 100644 index e69de29b..00000000 diff --git a/readline.supp b/readline.supp new file mode 100644 index 00000000..6d3a6b77 --- /dev/null +++ b/readline.supp @@ -0,0 +1,126 @@ +{ + ignore_readline_malloc + Memcheck:Leak + fun:malloc + obj:/usr/lib/x86_64-linux-gnu/libreadline.so.* +} +{ + ignore_readline_realloc + Memcheck:Leak + fun:realloc + obj:/usr/lib/x86_64-linux-gnu/libreadline.so.* +} +{ + ignore_readline_calloc + Memcheck:Leak + fun:calloc + obj:/usr/lib/x86_64-linux-gnu/libreadline.so.* +} +{ + ignore_readline_xmalloc + Memcheck:Leak + fun:xmalloc + obj:/usr/lib/x86_64-linux-gnu/libreadline.so.* +} +{ + ignore_readline_xrealloc + Memcheck:Leak + fun:xrealloc + obj:/usr/lib/x86_64-linux-gnu/libreadline.so.* +} +{ + ignore_readline_rl_initialize + Memcheck:Leak + fun:rl_initialize + obj:/usr/lib/x86_64-linux-gnu/libreadline.so.* +} +{ + ignore_readline_rl_set_prompt + Memcheck:Leak + fun:rl_set_prompt + obj:/usr/lib/x86_64-linux-gnu/libreadline.so.* +} +{ + ignore_readline_readline + Memcheck:Leak + fun:readline + obj:/usr/lib/x86_64-linux-gnu/libreadline.so.* +} +{ + ignore_readline_add_history + Memcheck:Leak + fun:add_history + obj:/usr/lib/x86_64-linux-gnu/libreadline.so.* +} +{ + ignore_readline_rl_getc + Memcheck:Leak + fun:rl_getc + obj:/usr/lib/x86_64-linux-gnu/libreadline.so.* +} +{ + ignore_readline_rl_read_key + Memcheck:Leak + fun:rl_read_key + obj:/usr/lib/x86_64-linux-gnu/libreadline.so.* +} +{ + ignore_readline_rl_signal_handler + Memcheck:Leak + fun:_rl_signal_handler + obj:/usr/lib/x86_64-linux-gnu/libreadline.so.* +} +{ + ignore_readline_rl_expand_prompt + Memcheck:Leak + fun:rl_expand_prompt + obj:/usr/lib/x86_64-linux-gnu/libreadline.so.* +} +{ + ignore_readline_rl_redisplay + Memcheck:Leak + fun:rl_redisplay + obj:/usr/lib/x86_64-linux-gnu/libreadline.so.* +} +{ + ignore_readline_rl_prep_terminal + Memcheck:Leak + fun:rl_prep_terminal + obj:/usr/lib/x86_64-linux-gnu/libreadline.so.* +} +{ + ignore_readline_rl_initialize_locale + Memcheck:Leak + fun:_rl_init_locale + obj:/usr/lib/x86_64-linux-gnu/libreadline.so.* +} +{ + ignore_readline_rl_init_terminal_io + Memcheck:Leak + fun:_rl_init_terminal_io + obj:/usr/lib/x86_64-linux-gnu/libreadline.so.* +} +{ + ignore_readline_rl_init_eightbit + Memcheck:Leak + fun:_rl_init_eightbit + obj:/usr/lib/x86_64-linux-gnu/libreadline.so.* +} +{ + ignore_readline_rl_parse_and_bind + Memcheck:Leak + fun:rl_parse_and_bind + obj:/usr/lib/x86_64-linux-gnu/libreadline.so.* +} +{ + ignore_readline_rl_set_screen_size + Memcheck:Leak + fun:_rl_get_screen_size + obj:/usr/lib/x86_64-linux-gnu/libreadline.so.* +} +{ + ignore_readline_rl_set_screen_size + Memcheck:Leak + fun:_rl_get_screen_size + obj:/usr/lib/x86_64-linux-gnu/libreadline.so.* +} \ No newline at end of file diff --git a/src/env/env.c b/src/env/env.c index a39bce43..05526b4b 100644 --- a/src/env/env.c +++ b/src/env/env.c @@ -37,13 +37,14 @@ void add_env_node(t_env **data_envp, char *line) char *key; char *value; - new_node = (t_env *)malloc(sizeof(t_env)); + new_node = (t_env *)malloc(sizeof(t_env) + 1); if (!new_node) return ; key = ft_strcdup(line, '='); value = ft_strchr(line, '=') + 1; new_node->key = ft_strdup(key); new_node->value = ft_strdup(value); + free(key); new_node->next = NULL; if (*data_envp == NULL) { diff --git a/src/utils/stack_control.c b/src/utils/stack_control.c index 9c527a63..894f7396 100644 --- a/src/utils/stack_control.c +++ b/src/utils/stack_control.c @@ -6,7 +6,7 @@ /* By: rmikhayl +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2024/05/31 20:39:16 by rmikhayl #+# #+# */ -/* Updated: 2024/06/05 16:09:01 by rmikhayl ### ########.fr */ +/* Updated: 2024/06/11 15:38:29 by dmdemirk ### ########.fr */ /* */ /* ************************************************************************** */