Commit 5db504f4ebc9b60afc31d62dc0d4c72cd1e98b3f

Authored by grouille
1 parent 293e356c

Ajout de la fonction free_tree qui libère la mémoire. Valgind détecte une erreur…

…, à trouver et corriger.
Showing 1 changed file with 9 additions and 10 deletions   Show diff stats
@@ -236,18 +236,17 @@ void print_first(Node Tree) @@ -236,18 +236,17 @@ void print_first(Node Tree)
236 } 236 }
237 } 237 }
238 238
239 -/*void free_tree(Node Tree) 239 +void free_tree(Node* Tree)
240 { 240 {
241 - int index=0;  
242 - while(index<NB_CARAC) 241 + if(*Tree!=NULL)
243 { 242 {
244 - if(Tree->next[index]!=NULL)  
245 - free_tree(Tree->next[index]);  
246 - else  
247 - index++; 243 + for(int i=0; i<NB_CARAC; i++)
  244 + {
  245 + free_tree(&(*Tree)->next[i]);
  246 + }
  247 + free(*Tree);
248 } 248 }
249 - free(Tree);  
250 - }*/ 249 +}
251 250
252 int main(int argc, char *argv[]) 251 int main(int argc, char *argv[])
253 { 252 {
@@ -270,6 +269,6 @@ int main(int argc, char *argv[]) @@ -270,6 +269,6 @@ int main(int argc, char *argv[])
270 269
271 printf("erreurs : %d\n", error); 270 printf("erreurs : %d\n", error);
272 271
273 - //free_tree(tree); 272 + free_tree(&tree);
274 return 0; 273 return 0;
275 } 274 }