summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKikooDX <kikoodx@paranoici.org>2022-08-31 05:23:02 +0200
committerKikooDX <kikoodx@paranoici.org>2022-08-31 05:23:02 +0200
commit8525cc5a8fb1e4da3827e066c16d9c3dd7c5eb3b (patch)
treec0e39ade13914f852f50fa700f2df0d1412e796e
parentfce0e91497e2a51bd2bde77f3cc8c8471c9c49f1 (diff)
downloadscr16-8525cc5a8fb1e4da3827e066c16d9c3dd7c5eb3b.tar.gz
fix gc
-rw-r--r--main.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/main.c b/main.c
index 273d5d1..4a0be8a 100644
--- a/main.c
+++ b/main.c
@@ -67,16 +67,15 @@ int main(int argc, char **argv)
fp = NULL;
fe_Object *init_sym = fe_symbol(ctx, "_init");
- gc = fe_savegc(ctx);
fe_eval(ctx, fe_list(ctx, &init_sym, 1));
fe_restoregc(ctx, gc);
fe_Object *update_sym = fe_symbol(ctx, "_update");
fe_Object *draw_sym = fe_symbol(ctx, "_draw");
- gc = fe_savegc(ctx);
while (!cycle_events()) {
static int cleaned = 0;
fe_eval(ctx, fe_list(ctx, &update_sym, 1));
+ fe_restoregc(ctx, gc);
if (r_draw_begin()) {
dx_log_error("r_draw_begin failed");
return deinit();
@@ -86,11 +85,11 @@ int main(int argc, char **argv)
cleaned = 1;
}
fe_eval(ctx, fe_list(ctx, &draw_sym, 1));
+ fe_restoregc(ctx, gc);
if (r_draw_end()) {
dx_log_error("r_draw_end failed");
return deinit();
}
- fe_restoregc(ctx, gc);
}
deinit();