diff --git a/src/calc.c b/src/calc.c index 79bd4ec976f025e7e12d367229c6ef492d200187..2be704c2226629665b414364a890465baad42faa 100644 --- a/src/calc.c +++ b/src/calc.c @@ -367,9 +367,9 @@ void calc_process() { /* start calculating */ if(!calc_dir(root, name) && !failed) { - free(path); if(!path[1] && strcmp(name, ".")) free(name); + free(path); if(root->sub == NULL) { freedir(root); failed = 1; @@ -403,9 +403,9 @@ void calc_process() { } /* something went wrong... */ + free(path); if(!path[1] && strcmp(name, ".")) free(name); - free(path); freedir(root); calc_fail: while(failed && !input_handle(0))