aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorRudy Bousset <bousset.rudy@gmail.com>2020-05-14 15:22:43 +0200
committerRudy Bousset <bousset.rudy@gmail.com>2020-05-14 15:22:43 +0200
commit7fad37259c22f6364d58ad856c203637a1ed92ab (patch)
tree390400232692934a9c6465985765030b2239b690 /src
parentCan't exit cleanly (diff)
download42-cub3d-7fad37259c22f6364d58ad856c203637a1ed92ab.tar.gz
42-cub3d-7fad37259c22f6364d58ad856c203637a1ed92ab.tar.bz2
42-cub3d-7fad37259c22f6364d58ad856c203637a1ed92ab.tar.xz
42-cub3d-7fad37259c22f6364d58ad856c203637a1ed92ab.tar.zst
42-cub3d-7fad37259c22f6364d58ad856c203637a1ed92ab.zip
Ok then
Diffstat (limited to 'src')
-rw-r--r--src/ft_click_close.c5
-rw-r--r--src/ft_exit.c13
2 files changed, 10 insertions, 8 deletions
diff --git a/src/ft_click_close.c b/src/ft_click_close.c
index 113c241..814392a 100644
--- a/src/ft_click_close.c
+++ b/src/ft_click_close.c
@@ -19,7 +19,6 @@ int
ft_click_close(int keycode, t_cub *clist)
{
(void)keycode;
- (void)clist;
- exit(0);
- return (0);
+ clist->clickclose = 1;
+ return (ft_exit(0, clist));
}
diff --git a/src/ft_exit.c b/src/ft_exit.c
index 8d1b3ba..ea43576 100644
--- a/src/ft_exit.c
+++ b/src/ft_exit.c
@@ -57,7 +57,7 @@ static void
i = -1;
while (clist->wlist.inited && ++i < FT_TOTAL_SFX)
{
- if (FT_OS == 2)
+ if (FT_OS == 2 && clist->clickclose == 0)
{
pthread_mutex_destroy(&clist->sfx[i].mutex);
system(FT_SND_TERM_CMD);
@@ -80,10 +80,13 @@ int
mlx_destroy_window(clist->wlist.wlx, clist->wlist.winptr);
}
ft_cancel_threads(clist);
- ft_del_map(&clist->mlist);
- ft_del_sprites_lists(clist);
- ft_del_sfx_cmd(clist);
- ft_del_last_remains(clist);
+ if (clist->clickclose == 0)
+ {
+ ft_del_map(&clist->mlist);
+ ft_del_sprites_lists(clist);
+ ft_del_sfx_cmd(clist);
+ ft_del_last_remains(clist);
+ }
ft_printf("Exiting program\n");
exit(exit_code);
return (0);