commit b961628a7766a4c1d1e182ded1d243217ecd7a01
parent df64451be25ad4a71c24b10e12c7688ae6cea6a2
Author: NunoSempere <nuno.sempere@protonmail.com>
Date: Tue, 2 May 2023 20:59:09 -0400
feat: squash another leak?
Diffstat:
2 files changed, 13 insertions(+), 2 deletions(-)
diff --git a/mumble b/mumble
Binary files differ.
diff --git a/src/mumble.c b/src/mumble.c
@@ -196,17 +196,28 @@ void delete_lispval(lispval* v)
case LISPVAL_QEXPR:
if (VERBOSE)
printfln("Freeing sexpr|qexpr");
- if (v == NULL || v->count != 0)
- return;
+ // if (v == NULL || v->count != 0)
+ // return;
+ if (VERBOSE)
+ printfln("Freed sexpr|qexpr cells");
for (int i = 0; i < v->count; i++) {
if (v->cell[i] != NULL)
delete_lispval(v->cell[i]);
v->cell[i] = NULL;
}
+ if (VERBOSE)
+ printfln("Setting v->count to 0");
v->count = 0;
+
+ if (VERBOSE)
+ printfln("Freeing v->cell");
if (v->cell != NULL)
free(v->cell);
v->cell = NULL;
+
+
+ if (VERBOSE)
+ printfln("Freeing the v pointer");
if (v != NULL)
free(v);
if (VERBOSE)