diff --git a/Connect4.c b/Connect4.c index 1cf001778847eca3f5a2746aaffebcd2e10ea916..9e65a5a97a471f19d0a53fb83740bc02d9f3084d 100644 --- a/Connect4.c +++ b/Connect4.c @@ -177,8 +177,11 @@ PlacingStatus connect4_play_smart(Connect4 *connect4, void (*on_piece_placed)(Co } if (connect4_check_win(copied_connect4, x, y, current_player)) { + connect4_destroy(copied_connect4); return connect4_play(connect4, x + 1, on_piece_placed); } + + connect4_destroy(copied_connect4); } current_player = change_player(current_player); diff --git a/Makefile b/Makefile index e8b2957fcc2a6e715f29dc361ac0452930c54e72..3360993f5da85a57c2bf2a38aa29565c104a6f7c 100644 --- a/Makefile +++ b/Makefile @@ -1,18 +1,20 @@ +CC = gcc +CCFLAGS = -g -Wall -Wextra -pedantic -fsanitize=address -fsanitize=leak + Connect4.o: Connect4.c - gcc -c $< -o $@ + $(CC) $(CCFLAGS) -c $< -o $@ random.o: random.c - gcc -c $< -o $@ + $(CC) $(CCFLAGS) -c $< -o $@ main.o: main.c - gcc -c $< -o $@ + $(CC) $(CCFLAGS) -c $< -o $@ puissance4: main.o Connect4.o random.o - gcc -o puissance4 main.o Connect4.o random.o + $(CC) $(CCFLAGS) -o puissance4 main.o Connect4.o random.o clean: - rm -f *.o - rm -f puissance4 + rm -f *.o puissance4 $(MAKE) -C testbed clean tests: puissance4