aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-06-02 08:17:55 +0000
committerko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-06-02 08:17:55 +0000
commitbbfe069ec1ffcf1519559632f2fd51fb01e251a0 (patch)
tree73e38c77981b9b4d175f8c67a5a16fb8ec701971
parent7af941da15ab3663281f229740b68c3d30813eea (diff)
downloadruby-bbfe069ec1ffcf1519559632f2fd51fb01e251a0.tar.gz
* vm.c (ruby_vm_destruct): remove useless call of
rb_gc_force_recycle(). At this line, a VM object is already freed (is changed to T_NONE) by rb_gc_call_finalizer_at_exit(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46314 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog8
-rw-r--r--vm.c2
2 files changed, 9 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 1c484152fe..5d66b4c343 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+Mon Jun 2 17:14:49 2014 Koichi Sasada <ko1@atdot.net>
+
+ * vm.c (ruby_vm_destruct): remove useless call of
+ rb_gc_force_recycle().
+
+ At this line, a VM object is already freed
+ (is changed to T_NONE) by rb_gc_call_finalizer_at_exit().
+
Mon Jun 2 15:50:24 2014 Koichi Sasada <ko1@atdot.net>
* eval.c (rb_using_refinement): add write-barriers for
diff --git a/vm.c b/vm.c
index ae0148e852..ea138cc862 100644
--- a/vm.c
+++ b/vm.c
@@ -1749,12 +1749,12 @@ int
ruby_vm_destruct(rb_vm_t *vm)
{
RUBY_FREE_ENTER("vm");
+
if (vm) {
rb_thread_t *th = vm->main_thread;
#if defined(ENABLE_VM_OBJSPACE) && ENABLE_VM_OBJSPACE
struct rb_objspace *objspace = vm->objspace;
#endif
- rb_gc_force_recycle(vm->self);
vm->main_thread = 0;
if (th) {
rb_fiber_reset_root_local_storage(th->self);