From 9778677c8b90dbfe0b02c97868cdf01d1df33a85 Mon Sep 17 00:00:00 2001
From: KosmX <kosmx.mc@gmail.com>
Date: Sun, 8 Nov 2020 17:44:48 +0100
Subject: [PATCH] feature: segmentation fault

---
 snake.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/snake.c b/snake.c
index c1d36b1..e309807 100644
--- a/snake.c
+++ b/snake.c
@@ -456,6 +456,7 @@ int updateSnake(Matrix *map, screenData *scrDat, Direction d, snakeChain *head,
         }
         while (snake->next != 0)
         {
+            snake = snake->next;
             chunk c;
             if(snake != head && snake->pos.x == head->pos.x && snake->pos.y == head->pos.y){
                 if(snake->next != NULL){
@@ -481,7 +482,6 @@ int updateSnake(Matrix *map, screenData *scrDat, Direction d, snakeChain *head,
                 
                 
             }
-            snake = snake->next;
             tmp_pos2 = snake->pos;
             snake->pos = tmp_pos1;
             tmp_pos1 = tmp_pos2;
@@ -592,7 +592,7 @@ int tick(Matrix *map, screenData *scrDat, snakeChain *snake, Direction *d, Food
     if(scrDat->commands[0] != NONE){
         *d = scrDat->commands[0];
     }
-    updateScreen(map, scrDat, snake, *d, NULL); // TODO non-null object
+    updateScreen(map, scrDat, snake, *d, food);
     if(d == NONE){
         chunk c;
         c.chars[0].bytes.c[0] = '(';
@@ -639,6 +639,7 @@ int loop(Matrix *matrix, int tickspeed, int repeatMap, int feedAmount, int canBi
         }
         chain = chain->next;
         chain->pos = p;
+        chain->next = NULL;
     }
 
     scrDat.size.x = 0;
-- 
GitLab