diff options
Diffstat (limited to 'gc.c')
-rw-r--r-- | gc.c | 14 |
1 files changed, 4 insertions, 10 deletions
@@ -278,15 +278,11 @@ rb_newobj() { VALUE obj; - if (freelist) { - retry: - obj = (VALUE)freelist; - freelist = freelist->as.free.next; - return obj; - } - rb_gc(); + if (!freelist) rb_gc(); - goto retry; + obj = (VALUE)freelist; + freelist = freelist->as.free.next; + return obj; } VALUE @@ -649,8 +645,6 @@ rb_gc_mark(ptr) } } -#define MIN_FREE_OBJ 512 - static void obj_free _((VALUE)); static void |