From 9631bc1af8744e2eaa135a54f542919cd4421add Mon Sep 17 00:00:00 2001
From: Florian Burgener <florian.brgnr@gmail.com>
Date: Sun, 19 Dec 2021 03:14:52 +0100
Subject: [PATCH] Fix memory leak

---
 Connect4.c |  3 +++
 Makefile   | 14 ++++++++------
 2 files changed, 11 insertions(+), 6 deletions(-)

diff --git a/Connect4.c b/Connect4.c
index 1cf0017..9e65a5a 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 e8b2957..3360993 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
-- 
GitLab