diff options
| -rw-r--r-- | include/mruby.h | 4 | ||||
| -rw-r--r-- | include/mruby/gc.h | 6 | ||||
| -rw-r--r-- | src/gc.c | 4 |
3 files changed, 7 insertions, 7 deletions
diff --git a/include/mruby.h b/include/mruby.h index 8a26146df..b0161aff7 100644 --- a/include/mruby.h +++ b/include/mruby.h @@ -65,10 +65,6 @@ struct mrb_state; */ typedef void* (*mrb_allocf) (struct mrb_state *mrb, void*, size_t, void *ud); -#ifndef MRB_GC_ARENA_SIZE -#define MRB_GC_ARENA_SIZE 100 -#endif - #ifndef MRB_FIXED_STATE_ATEXIT_STACK_SIZE #define MRB_FIXED_STATE_ATEXIT_STACK_SIZE 5 #endif diff --git a/include/mruby/gc.h b/include/mruby/gc.h index 2bd8b8539..d7687c05e 100644 --- a/include/mruby/gc.h +++ b/include/mruby/gc.h @@ -30,6 +30,10 @@ MRB_API void mrb_free_context(struct mrb_state *mrb, struct mrb_context *c); #define MRB_GC_WHITES (MRB_GC_WHITE_A | MRB_GC_WHITE_B) #define MRB_GC_COLOR_MASK 7 +#ifndef MRB_GC_ARENA_SIZE +#define MRB_GC_ARENA_SIZE 100 +#endif + typedef enum { GC_STATE_ROOT = 0, GC_STATE_MARK, @@ -75,7 +79,7 @@ typedef struct mrb_gc { } mrb_gc; MRB_API mrb_bool -mrb_object_dead_p(struct mrb_state *mrb, struct RObject *object); +mrb_object_dead_p(struct mrb_state *mrb, struct RBasic *object); MRB_END_DECL @@ -260,7 +260,7 @@ mrb_free(mrb_state *mrb, void *p) } MRB_API mrb_bool -mrb_object_dead_p(mrb_state *mrb, struct RObject *object) { +mrb_object_dead_p(mrb_state *mrb, struct RBasic *object) { return is_dead(&mrb->gc, object); } @@ -394,7 +394,7 @@ gc_protect(mrb_state *mrb, mrb_gc *gc, struct RBasic *p) if (gc->arena_idx >= MRB_GC_ARENA_SIZE) { /* arena overflow error */ gc->arena_idx = MRB_GC_ARENA_SIZE - 4; /* force room in arena */ - mrb_raise(gc, E_RUNTIME_ERROR, "arena overflow error"); + mrb_raise(mrb, E_RUNTIME_ERROR, "arena overflow error"); } #else if (gc->arena_idx >= gc->arena_capa) { |
