diff options
| author | Dominik Kaiser | 2024-06-10 16:39:55 +0200 |
|---|---|---|
| committer | Dominik Kaiser | 2024-06-10 16:39:55 +0200 |
| commit | ff7d60ad044e98e1e2e14170b5804d141856a949 (patch) | |
| tree | dd896d064a49bb399b7c942fde49ae0bf892263b /src/main.c | |
| parent | 81bfaf91dedc75b758a9057a2b7c23adc5a68e93 (diff) | |
| download | so_long-ff7d60ad044e98e1e2e14170b5804d141856a949.tar.gz so_long-ff7d60ad044e98e1e2e14170b5804d141856a949.zip | |
Cleanup
Diffstat (limited to 'src/main.c')
| -rw-r--r-- | src/main.c | 34 |
1 files changed, 28 insertions, 6 deletions
@@ -6,24 +6,46 @@ /* By: dkaiser <dkaiser@student.42heilbronn.de +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2024/05/08 14:14:13 by dkaiser #+# #+# */ -/* Updated: 2024/05/29 14:58:22 by dkaiser ### ########.fr */ +/* Updated: 2024/06/10 16:37:21 by dkaiser ### ########.fr */ /* */ /* ************************************************************************** */ +#include "libft.h" #include "so_long.h" +static void cleanup(t_game *game); +static int error(char *msg); + int main(int argc, char *argv[]) { t_game game; if (argc != 2) - return (1); + return (error("Usage: ./so_long <map>")); if (load_map_from_file(&game.map, argv[1])) - return (1); + return (error("Not a valid map.")); if (check_map(&game.map)) - return (1); + { + free(game.map.tiles); + return (error("Not a valid map.")); + } init(&game); - draw_walls(&game); - draw_exit(&game); + draw_map(&game); mlx_loop(game.mlx); + cleanup(&game); +} + +static void cleanup(t_game *game) +{ + if (game->map.tiles) + free(game->map.tiles); + if (game->mlx) + mlx_terminate(game->mlx); +} + +static int error(char *msg) +{ + ft_putendl_fd("Error", 2); + ft_putendl_fd(msg, 2); + return (1); } |
