Added free() calls
This commit is contained in:
parent
3a27588d6f
commit
9219f8f097
21
generator.c
21
generator.c
@ -123,17 +123,17 @@ struct Graph *parse(int argc, char *argv[])
|
||||
fprintf(stderr, "[%s] An edge consists of two "
|
||||
"nodes separated by a dash\n", pname);
|
||||
free(str);
|
||||
exit(EXIT_FAILURE);
|
||||
return NULL;
|
||||
}
|
||||
switch (src) {
|
||||
case -2:
|
||||
free(str);
|
||||
exit(EXIT_FAILURE);
|
||||
return NULL;
|
||||
break;
|
||||
case -1:
|
||||
fprintf(stderr, "%s\n", edge);
|
||||
free(str);
|
||||
exit(EXIT_FAILURE);
|
||||
return NULL;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
@ -141,6 +141,7 @@ struct Graph *parse(int argc, char *argv[])
|
||||
|
||||
count++;
|
||||
}
|
||||
free(str);
|
||||
}
|
||||
|
||||
struct Graph *graph = createGraph(V+1);
|
||||
@ -176,9 +177,21 @@ int main(int argc, char *argv[])
|
||||
sigaction(SIGINT, &sa, NULL);
|
||||
sigaction(SIGTERM, &sa, NULL);
|
||||
|
||||
struct Graph *graph;
|
||||
|
||||
while (quit == 0) {
|
||||
struct Graph *graph = parse(argc, argv);
|
||||
graph = parse(argc, argv);
|
||||
if (graph == NULL) {
|
||||
for (int i = 0; i < graph->V; i++) {
|
||||
free(graph->array[i].head);
|
||||
}
|
||||
free(graph->array);
|
||||
free(graph);
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
printGraph(graph);
|
||||
free(graph->array);
|
||||
free(graph);
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user