summaryrefslogtreecommitdiffhomepage
path: root/main.c
diff options
context:
space:
mode:
authorJo-Philipp Wich <jo@mein.io>2022-02-07 10:13:38 +0100
committerGitHub <noreply@github.com>2022-02-07 10:13:38 +0100
commit78cdd2691a24dcb62f8342eabecfa8eeb2f301c2 (patch)
treed2c3aed28eb7c043c73b84ea3af0837225ee02a5 /main.c
parent5bd764a35aeaf50b54957bfa94ba94198514baf0 (diff)
parent11adf0c4ea91e63ec523849c2846fd07bf4348f5 (diff)
Merge pull request #38 from jow-/function-memory-model
treewide: rework function memory model
Diffstat (limited to 'main.c')
-rw-r--r--main.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/main.c b/main.c
index 4b6738d..f9ce6f0 100644
--- a/main.c
+++ b/main.c
@@ -81,13 +81,13 @@ static int
compile(uc_vm_t *vm, uc_source_t *src, FILE *precompile, bool strip)
{
uc_value_t *res = NULL;
- uc_function_t *entry;
+ uc_program_t *program;
int rc = 0;
char *err;
- entry = uc_compile(vm->config, src, &err);
+ program = uc_compile(vm->config, src, &err);
- if (!entry) {
+ if (!program) {
fprintf(stderr, "%s", err);
free(err);
rc = -1;
@@ -95,13 +95,12 @@ compile(uc_vm_t *vm, uc_source_t *src, FILE *precompile, bool strip)
}
if (precompile) {
- uc_program_write(entry->program, precompile, !strip);
- uc_program_free(entry->program);
+ uc_program_write(program, precompile, !strip);
fclose(precompile);
goto out;
}
- rc = uc_vm_execute(vm, entry, &res);
+ rc = uc_vm_execute(vm, program, &res);
switch (rc) {
case STATUS_OK:
@@ -122,6 +121,7 @@ compile(uc_vm_t *vm, uc_source_t *src, FILE *precompile, bool strip)
}
out:
+ uc_program_put(program);
ucv_put(res);
return rc;