diff --git a/src/fr/monlouyan/bakefile/CommandExecutor.java b/src/fr/monlouyan/bakefile/CommandExecutor.java
index 852693e..065ea24 100644
--- a/src/fr/monlouyan/bakefile/CommandExecutor.java
+++ b/src/fr/monlouyan/bakefile/CommandExecutor.java
@@ -37,31 +37,9 @@ public class CommandExecutor {
                     }
                     if (debug) System.out.println("Debug: Executing " + command);
                     ProcessBuilder pb = new ProcessBuilder("sh", "-c", command);
+					pb.inheritIO();
                     Process process = pb.start();
 
-                    // Lire et afficher la sortie standard (stdout)
-                    new Thread(() -> {
-                        try (var reader = new java.io.BufferedReader(new java.io.InputStreamReader(process.getInputStream()))) {
-                            String line;
-                            while ((line = reader.readLine()) != null) {
-                                System.out.println(line);
-                            }
-                        } catch (IOException e) {
-                            e.printStackTrace();
-                        }
-                    }).start();
-
-                    // Lire et afficher la sortie d'erreur (stderr)
-                    new Thread(() -> {
-                        try (var reader = new java.io.BufferedReader(new java.io.InputStreamReader(process.getErrorStream()))) {
-                            String line;
-                            while ((line = reader.readLine()) != null) {
-                                System.err.println(line);
-                            }
-                        } catch (IOException e) {
-                            e.printStackTrace();
-                        }
-                    }).start();
 
                     // Attendre la fin du processus
                     int exitCode = process.waitFor();
diff --git a/tests/C/test-11-error-in-code/README.md b/tests/C/test-11-error-in-code/README.md
new file mode 100644
index 0000000..306987e
--- /dev/null
+++ b/tests/C/test-11-error-in-code/README.md
@@ -0,0 +1 @@
+Quand il y a une erreur dans le code, ça affiche l'erreur + stop le programme exactement comme make.
\ No newline at end of file
diff --git a/tests/C/test-11-error-in-code/bake/Bakefile b/tests/C/test-11-error-in-code/bake/Bakefile
new file mode 100644
index 0000000..9dab9f6
--- /dev/null
+++ b/tests/C/test-11-error-in-code/bake/Bakefile
@@ -0,0 +1,7 @@
+all: main
+
+main: main.c
+	gcc -o main main.c
+
+clean:
+	rm -f main
diff --git a/tests/C/test-11-error-in-code/bake/main.c b/tests/C/test-11-error-in-code/bake/main.c
new file mode 100644
index 0000000..a2c1c2f
--- /dev/null
+++ b/tests/C/test-11-error-in-code/bake/main.c
@@ -0,0 +1,15 @@
+#include <stdlib.h>
+#include <stdio.h>
+
+int main(void){
+	printf("Normalement, ce code ne fonctionne par car j'ai été stupide...\n");
+	
+	// La fonction qui suit n'existe pas donc le programme ne peut pas compiler et renvoie une erreur.
+	fonctionQuiNexistePas();
+
+	// La division par zéro est impossible, le programme renvoie un warning.
+	int a = 15;
+	a = a/0;
+
+	return 0;
+}
\ No newline at end of file
diff --git a/tests/C/test-11-error-in-code/make/Makefile b/tests/C/test-11-error-in-code/make/Makefile
new file mode 100644
index 0000000..9dab9f6
--- /dev/null
+++ b/tests/C/test-11-error-in-code/make/Makefile
@@ -0,0 +1,7 @@
+all: main
+
+main: main.c
+	gcc -o main main.c
+
+clean:
+	rm -f main
diff --git a/tests/C/test-11-error-in-code/make/main.c b/tests/C/test-11-error-in-code/make/main.c
new file mode 100644
index 0000000..a2c1c2f
--- /dev/null
+++ b/tests/C/test-11-error-in-code/make/main.c
@@ -0,0 +1,15 @@
+#include <stdlib.h>
+#include <stdio.h>
+
+int main(void){
+	printf("Normalement, ce code ne fonctionne par car j'ai été stupide...\n");
+	
+	// La fonction qui suit n'existe pas donc le programme ne peut pas compiler et renvoie une erreur.
+	fonctionQuiNexistePas();
+
+	// La division par zéro est impossible, le programme renvoie un warning.
+	int a = 15;
+	a = a/0;
+
+	return 0;
+}
\ No newline at end of file