diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | gc.c | 3 |
2 files changed, 10 insertions, 1 deletions
@@ -1,3 +1,11 @@ +Fri May 16 17:26:24 2014 Koichi Sasada <ko1@atdot.net> + + * gc.c (gc_before_sweep): heap_pages_swept_slots should contains + heap_pages_increment. + + For example, GC by exceeding malloc_limit can remain + heap_pages_increment. + Thu May 15 21:18:43 2014 Hiroshi Shirosaki <h.shirosaki@gmail.com> * configure.in: enable SSE2 on mingw. target='i386-pc-mingw32'. @@ -2910,7 +2910,8 @@ gc_before_sweep(rb_objspace_t *objspace) rb_sweep_method_entry(GET_VM()); } - heap_pages_swept_slots = 0; + /* sometimes heap_pages_increment is not 0 */ + heap_pages_swept_slots = heap_pages_increment * HEAP_OBJ_LIMIT; total_limit_slot = objspace_total_slot(objspace); heap_pages_min_free_slots = (size_t)(total_limit_slot * GC_HEAP_FREE_SLOTS_MIN_RATIO); |