diff --git a/evenement.c b/evenement.c
index 8549670..8e9e04a 100644
--- a/evenement.c
+++ b/evenement.c
@@ -40,20 +40,21 @@ void InitialiserPastilles(PIXELS *pastilles, PIXELS *serpent, int longueur_serpe
     }
 }
 
-void MourrirSerpent(PIXELS *serpent, int longueur_serpent)
+int MourrirSerpent(PIXELS *serpent, int longueur_serpent)
 {
     int i = 0;
     for(i=1;i<longueur_serpent;i++)
     {
         if(serpent[0].x == serpent[i].x && serpent[0].y == serpent[i].y )
         {
-            FermerGraphique();
+            return 1;
         }
     }
     if (serpent[0].x<=0 || serpent[0].x>W_GAME || serpent[0].y<=0 || serpent[0].y>H_GAME)
     {
-        FermerGraphique();
+        return 1;
     }
+    return 0;
 }
 
 int MangerPastille(PIXELS *serpent, PIXELS* pastilles,unsigned long *score,int longueur_serpent)
diff --git a/evenement.h b/evenement.h
index 4c53aee..f127f37 100644
--- a/evenement.h
+++ b/evenement.h
@@ -13,7 +13,7 @@ void AfficherTimerEtScore(long unsigned int *score,int minutes,int secondes);
 
 int PastilleSurSerpent(PIXELS pastille, PIXELS *serpent, int longueur_serpent);
 
-void MourrirSerpent(PIXELS *serpent, int longueur_serpent);
+int MourrirSerpent(PIXELS *serpent, int longueur_serpent);
 
 
 #endif
\ No newline at end of file
diff --git a/evenement.o b/evenement.o
index ac9d453..8c88df1 100644
Binary files a/evenement.o and b/evenement.o differ
diff --git a/main.c b/main.c
index 8a55384..72d98a2 100644
--- a/main.c
+++ b/main.c
@@ -207,7 +207,13 @@ int main()
                 suivant=Microsecondes()+delta;
                 AfficherTimerEtScore(&score,minutes,secondes);
                 direction_davant = direction; /* Check si le serpent à le droit de changer de direction */
-                MourrirSerpent(serpent,longueur_serpent);
+                if(MourrirSerpent(serpent,longueur_serpent))
+                {
+                    FermerGraphique();
+                    free(serpent);
+                    free(pastilles);
+                    return EXIT_FAILURE;
+                }
                 DeplacementSerpent(direction,serpent,longueur_serpent);
                 if(MangerPastille(serpent,pastilles,&score,longueur_serpent) == 1)
                 {
diff --git a/main.o b/main.o
index 3298ec2..24a8276 100644
Binary files a/main.o and b/main.o differ
diff --git a/prog b/prog
index 31b140a..2f1e4cf 100755
Binary files a/prog and b/prog differ