aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorRudy Bousset <rbousset@z1r3p1.le-101.fr>2020-03-05 19:45:26 +0100
committerRudy Bousset <rbousset@z1r3p1.le-101.fr>2020-03-05 19:45:26 +0100
commit528526dece384c9078d888a904c3fe96f1b0845c (patch)
tree059bf5332cd463578bbedf1aaa22a06d2b4733eb /src
parentDARK (diff)
download42-cub3d-528526dece384c9078d888a904c3fe96f1b0845c.tar.gz
42-cub3d-528526dece384c9078d888a904c3fe96f1b0845c.tar.bz2
42-cub3d-528526dece384c9078d888a904c3fe96f1b0845c.tar.xz
42-cub3d-528526dece384c9078d888a904c3fe96f1b0845c.tar.zst
42-cub3d-528526dece384c9078d888a904c3fe96f1b0845c.zip
Baleck
Diffstat (limited to 'src')
-rw-r--r--src/ft_exit.c5
-rw-r--r--src/ft_music.c2
-rw-r--r--src/ft_warp_level.c10
3 files changed, 13 insertions, 4 deletions
diff --git a/src/ft_exit.c b/src/ft_exit.c
index ca5201c..6726fb1 100644
--- a/src/ft_exit.c
+++ b/src/ft_exit.c
@@ -68,7 +68,10 @@ int
if (clist->isoldmus && clist->wlist.inited)
{
pthread_cancel(clist->tid);
- pthread_join(clist->tid, NULL);
+ if (FT_OS == 2)
+ pthread_join(clist->tid, NULL);
+ else
+ pthread_kill(clist->tid, SIGTERM);
}
ft_free_lists(clist);
ft_printf("Exiting program\n");
diff --git a/src/ft_music.c b/src/ft_music.c
index aec5e58..368cb05 100644
--- a/src/ft_music.c
+++ b/src/ft_music.c
@@ -24,7 +24,7 @@ void
cl = (t_cub *)vargp;
cl->isoldmus = 1;
pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, NULL);
- while (1)
+ /* while (1) */
system(cl->mlist.music_cmd);
return (NULL);
}
diff --git a/src/ft_warp_level.c b/src/ft_warp_level.c
index 808b346..cda89b0 100644
--- a/src/ft_warp_level.c
+++ b/src/ft_warp_level.c
@@ -67,14 +67,20 @@ static void
if (isoldmus && !cl->mlist.ismusic)
{
pthread_cancel(cl->tid);
- pthread_join(cl->tid, NULL);
+ if (FT_OS == 2)
+ pthread_join(cl->tid, NULL);
+ else
+ pthread_kill(cl->tid, SIGTERM);
cl->isoldmus = 0;
}
else if (isoldmus && cl->mlist.ismusic
&& ft_strncmp(tmp_mup, cl->mlist.music_path, ft_strlen(tmp_mup) + 1))
{
pthread_cancel(cl->tid);
- pthread_join(cl->tid, NULL);
+ if (FT_OS == 2)
+ pthread_join(cl->tid, NULL);
+ else
+ pthread_kill(cl->tid, SIGTERM);
pthread_create(&cl->tid, NULL, ft_music_thread, cl);
}
else if (isoldmus && cl->mlist.ismusic