aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Makefile5
-rw-r--r--src/ft_sfx_footstep.c33
-rw-r--r--src/ft_sfx_trap.c3
3 files changed, 22 insertions, 19 deletions
diff --git a/Makefile b/Makefile
index 7c24e8b..e27b411 100644
--- a/Makefile
+++ b/Makefile
@@ -127,6 +127,7 @@ CFLAGS += -Wall
CFLAGS += -Wextra
CFLAGS += -Werror
CFLAGS += -pedantic
+CFLAGS += -pthread
#--------------------------------------------------------------------------------------------------#
ifdef ASAN
CFLAGS += ${DEBUG}
@@ -163,10 +164,10 @@ else
@$(MAKE) --no-print-directory -C ${LFT_DIR} all
endif
ifeq (${OS}, Darwin)
- ${CC} ${CFLAGS} -o $@ ${OBJS} -L${LFT_DIR} -L${MLX_DIR} -lft -lmlx -lm \
+ ${CC} ${CFLAGS} -o $@ ${OBJS} -L${LFT_DIR} -L${MLX_DIR} -lft -lmlx -lm -lpthread \
-framework OpenGL -framework AppKit
else
- ${CC} ${CFLAGS} -o $@ ${OBJS} -L${LFT_DIR} -lft -lX11 -lXext -lmlx -lm -lbsd
+ ${CC} ${CFLAGS} -o $@ ${OBJS} -L${LFT_DIR} -lft -lX11 -lXext -lmlx -lm -lbsd -lpthread
endif
#--------------------------------------------------------------------------------------------------#
all: ${NAME}
diff --git a/src/ft_sfx_footstep.c b/src/ft_sfx_footstep.c
index 391bf79..bccb847 100644
--- a/src/ft_sfx_footstep.c
+++ b/src/ft_sfx_footstep.c
@@ -23,21 +23,22 @@
void
ft_sfx_footstep(t_cub *cl)
{
- static uint8_t ref = 0;
+ (void)cl;
+ /* static uint8_t ref = 0; */
- cl->sfx.footstep_pid = fork();
- if (cl->sfx.footstep_pid == 0)
- {
- ref += 1;
- if (ref > 201)
- ref = 0;
- if (ref % 2)
- execve(*(cl->sfx.footstep_one + 0),
- cl->sfx.footstep_one, cl->envp);
- else
- execve(*(cl->sfx.footstep_two + 0),
- cl->sfx.footstep_two, cl->envp);
- }
- else
- wait(&cl->sfx.footstep_pid);
+ /* cl->sfx.footstep_pid = fork(); */
+ /* if (cl->sfx.footstep_pid == 0) */
+ /* { */
+ /* ref += 1; */
+ /* if (ref > 201) */
+ /* ref = 0; */
+ /* if (ref % 2) */
+ /* execve(*(cl->sfx.footstep_one + 0), */
+ /* cl->sfx.footstep_one, cl->envp); */
+ /* else */
+ /* execve(*(cl->sfx.footstep_two + 0), */
+ /* cl->sfx.footstep_two, cl->envp); */
+ /* } */
+ /* else */
+ /* wait(&cl->sfx.footstep_pid); */
}
diff --git a/src/ft_sfx_trap.c b/src/ft_sfx_trap.c
index 1499ecf..b52b9c1 100644
--- a/src/ft_sfx_trap.c
+++ b/src/ft_sfx_trap.c
@@ -15,6 +15,7 @@
#include <unistd.h>
#include <stdint.h>
+#include <pthread.h>
static void
ft_sfx_pain(t_cub *cl)
{
@@ -40,7 +41,7 @@ void
ft_sfx_trap(t_cub *cl)
{
cl->sfx.trap_pid = fork();
- if (cl->sfx.trap_pid == 0)
+ else if (cl->sfx.trap_pid == 0)
execve(*(cl->sfx.trap + 0), cl->sfx.trap, cl->envp);
else
{