[前][次][番号順一覧][スレッド一覧]

ruby-changes:11352

From: nobu <ko1@a...>
Date: Sun, 15 Mar 2009 12:50:32 +0900 (JST)
Subject: [ruby-changes:11352] Ruby:r22971 (ruby_1_8): * gc.c (run_final): frees zombies only.

nobu	2009-03-15 12:50:25 +0900 (Sun, 15 Mar 2009)

  New Revision: 22971

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=22971

  Log:
    * gc.c (run_final): frees zombies only.  [ruby-dev:38171]

  Modified files:
    branches/ruby_1_8/ChangeLog
    branches/ruby_1_8/gc.c

Index: ruby_1_8/ChangeLog
===================================================================
--- ruby_1_8/ChangeLog	(revision 22970)
+++ ruby_1_8/ChangeLog	(revision 22971)
@@ -1,3 +1,7 @@
+Sun Mar 15 12:50:23 2009  Nobuyoshi Nakada  <nobu@r...>
+
+	* gc.c (run_final): frees zombies only.  [ruby-dev:38171]
+
 Sun Mar 15 04:19:19 2009  Nobuyoshi Nakada  <nobu@r...>
 
 	* gc.c (rb_gc_call_finalizer_at_exit): leave Thread objects
Index: ruby_1_8/gc.c
===================================================================
--- ruby_1_8/gc.c	(revision 22970)
+++ ruby_1_8/gc.c	(revision 22971)
@@ -1960,7 +1960,7 @@
     objid = rb_obj_id(obj);	/* make obj into id */
     RBASIC(obj)->klass = 0;
     rb_thread_critical = Qtrue;
-    if (RDATA(obj)->dfree) {
+    if (BUILTIN_TYPE(obj) == T_ZOMBIE && RDATA(obj)->dfree) {
 	(*RDATA(obj)->dfree)(DATA_PTR(obj));
     }
     args[1] = 0;

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]