From c40c3bb9d61bd4e3185701d38981b10e3bbeefdb Mon Sep 17 00:00:00 2001 From: whaffman Date: Thu, 29 May 2025 12:07:23 +0200 Subject: [PATCH] no segfault by not enclosed map etc --- src/map/create_grid.c | 3 ++- src/map/grid_free.c | 14 +++++++------- src/map/map_create.c | 16 ++++++++-------- src/map/map_free.c | 16 +++++++++------- 4 files changed, 26 insertions(+), 23 deletions(-) diff --git a/src/map/create_grid.c b/src/map/create_grid.c index 399f04e..4cec307 100644 --- a/src/map/create_grid.c +++ b/src/map/create_grid.c @@ -6,7 +6,7 @@ /* By: whaffman +#+ */ /* +#+ */ /* Created: 2025/04/23 12:18:31 by whaffman #+# #+# */ -/* Updated: 2025/04/23 12:20:25 by whaffman ######## odam.nl */ +/* Updated: 2025/05/29 11:57:45 by whaffman ######## odam.nl */ /* */ /* ************************************************************************** */ @@ -21,6 +21,7 @@ t_tile **create_grid(int width, int height) grid = malloc(sizeof(t_tile *) * height); if (!grid) return (NULL); + ft_memset(grid, 0, sizeof(t_tile *) * height); i = 0; while (i < height) { diff --git a/src/map/grid_free.c b/src/map/grid_free.c index 38cd0b1..f2410e2 100644 --- a/src/map/grid_free.c +++ b/src/map/grid_free.c @@ -1,12 +1,12 @@ /* ************************************************************************** */ /* */ -/* ::: :::::::: */ -/* grid_free.c :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: qmennen +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2025/04/23 12:20:38 by whaffman #+# #+# */ -/* Updated: 2025/05/28 13:09:39 by qmennen ### ########.fr */ +/* :::::::: */ +/* grid_free.c :+: :+: */ +/* +:+ */ +/* By: qmennen +#+ */ +/* +#+ */ +/* Created: 2025/04/23 12:20:38 by whaffman #+# #+# */ +/* Updated: 2025/05/29 11:52:35 by whaffman ######## odam.nl */ /* */ /* ************************************************************************** */ diff --git a/src/map/map_create.c b/src/map/map_create.c index e532831..9185956 100644 --- a/src/map/map_create.c +++ b/src/map/map_create.c @@ -1,12 +1,12 @@ /* ************************************************************************** */ /* */ -/* ::: :::::::: */ -/* map_create.c :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: qmennen +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2025/04/23 12:21:13 by whaffman #+# #+# */ -/* Updated: 2025/05/28 13:20:00 by qmennen ### ########.fr */ +/* :::::::: */ +/* map_create.c :+: :+: */ +/* +:+ */ +/* By: qmennen +#+ */ +/* +#+ */ +/* Created: 2025/04/23 12:21:13 by whaffman #+# #+# */ +/* Updated: 2025/05/29 12:04:12 by whaffman ######## odam.nl */ /* */ /* ************************************************************************** */ @@ -57,7 +57,7 @@ static int map_validate_and_finalize(t_game **game, t_tile **grid) { ft_putendl_fd("Map is not enclosed", STDERR_FILENO); grid_free(grid, (*game)->map->height); - map_free((*game)->map); + // map_free((*game)->map); return (FAILURE); } grid_free((*game)->map->grid, (*game)->map->height); diff --git a/src/map/map_free.c b/src/map/map_free.c index 0f8e022..5ae26f8 100644 --- a/src/map/map_free.c +++ b/src/map/map_free.c @@ -1,12 +1,12 @@ /* ************************************************************************** */ /* */ -/* ::: :::::::: */ -/* map_free.c :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: qmennen +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2025/04/23 12:22:28 by whaffman #+# #+# */ -/* Updated: 2025/05/28 14:30:16 by qmennen ### ########.fr */ +/* :::::::: */ +/* map_free.c :+: :+: */ +/* +:+ */ +/* By: qmennen +#+ */ +/* +#+ */ +/* Created: 2025/04/23 12:22:28 by whaffman #+# #+# */ +/* Updated: 2025/05/29 12:05:59 by whaffman ######## odam.nl */ /* */ /* ************************************************************************** */ @@ -16,6 +16,8 @@ void map_free(t_map *map) { int i; + if (!map) + return ; grid_free(map->grid, map->height); if (map->texture_floor)