aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--gc.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 08e0bde57a..c338a69ee7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Fri Dec 6 18:33:39 2013 Koichi Sasada <ko1@atdot.net>
+
+ * gc.c (garbage_collect_body): bug fix.
+ initialize after recording.
+
Fri Dec 6 17:49:46 2013 Koichi Sasada <ko1@atdot.net>
* gc.c (atomic_sub_nounderflow): added to simplify atomic sub with
diff --git a/gc.c b/gc.c
index 84e906a0bf..419cb58f3a 100644
--- a/gc.c
+++ b/gc.c
@@ -4847,8 +4847,8 @@ garbage_collect_body(rb_objspace_t *objspace, int full_mark, int immediate_sweep
reason |= GPR_FLAG_MAJOR_BY_NOFREE;
}
if (objspace->rgengc.need_major_gc) {
- objspace->rgengc.need_major_gc = GPR_FLAG_NONE;
reason |= objspace->rgengc.need_major_gc;
+ objspace->rgengc.need_major_gc = GPR_FLAG_NONE;
}
if (objspace->rgengc.remembered_shady_object_count > objspace->rgengc.remembered_shady_object_limit) {
reason |= GPR_FLAG_MAJOR_BY_SHADY;