summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-06-03 10:17:18 +0000
committerko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-06-03 10:17:18 +0000
commit7ad125d7d216915b12ef3417b9a4f2b4a9305cff (patch)
tree93a001416cfda68bd856be5eeb3cd325da3b8dcd
parenta5fd4c45e37a53118e8385e9a91201fd6c99993c (diff)
* gc.c (rb_objspace_free): should not rest_sweep() here.
Some data structures are already freed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46340 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog5
-rw-r--r--gc.c2
2 files changed, 5 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 7477d26ce9..e068044de5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Tue Jun 3 19:11:45 2014 Koichi Sasada <ko1@atdot.net>
+
+ * gc.c (rb_objspace_free): should not rest_sweep() here.
+ Some data structures are already freed.
+
Tue Jun 3 18:43:51 2014 Koichi Sasada <ko1@atdot.net>
* test/ruby/test_gc.rb: allocate more objects to invoke GC by newobj.
diff --git a/gc.c b/gc.c
index 82c6eadf2a..da17655a64 100644
--- a/gc.c
+++ b/gc.c
@@ -929,8 +929,6 @@ static void heap_page_free(rb_objspace_t *objspace, struct heap_page *page);
void
rb_objspace_free(rb_objspace_t *objspace)
{
- gc_rest_sweep(objspace);
-
if (objspace->profile.records) {
free(objspace->profile.records);
objspace->profile.records = 0;