diff --git a/vvm/src/main.c b/vvm/src/main.c index 2922158..f8a55d7 100644 --- a/vvm/src/main.c +++ b/vvm/src/main.c @@ -8,9 +8,10 @@ * executes code in my dsl. */ int main(int argc, char** argv){ + program prog; if(argc != 2) die(127, "Please specify exactly one file to execute."); - program prog = vm_parse(argv[1]); + prog = vm_parse(argv[1]); vm_execute(prog.code, prog.entrypoint, 0, prog.length); return 0; } diff --git a/vvm/src/vm.c b/vvm/src/vm.c index 9bef6a2..313f437 100644 --- a/vvm/src/vm.c +++ b/vvm/src/vm.c @@ -159,6 +159,9 @@ void vm_execute(int code[], int ip, int datasize, unsigned long length){ die(127, "Exit on program failure."); } } + + free(data); + return; }