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

ruby-changes:30457

From: tarui <ko1@a...>
Date: Mon, 12 Aug 2013 23:09:40 +0900 (JST)
Subject: [ruby-changes:30457] tarui:r42536 (trunk): * gc.c (gc_marks_test): inhibit gc for st's operation.

tarui	2013-08-12 23:09:34 +0900 (Mon, 12 Aug 2013)

  New Revision: 42536

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

  Log:
    * gc.c (gc_marks_test): inhibit gc for st's operation.

  Modified files:
    trunk/ChangeLog
    trunk/gc.c
Index: ChangeLog
===================================================================
--- ChangeLog	(revision 42535)
+++ ChangeLog	(revision 42536)
@@ -1,3 +1,7 @@ https://github.com/ruby/ruby/blob/trunk/ChangeLog#L1
+Mon Aug 12 23:07:21 2013  Masaya Tarui  <tarui@r...>
+
+	* gc.c (gc_marks_test): inhibit gc for st's operation.
+
 Mon Aug 12 15:59:50 2013  Nobuyoshi Nakada  <nobu@r...>
 
 	* parse.y (parser_whole_match_p): treat CR in middle of a line as a
Index: gc.c
===================================================================
--- gc.c	(revision 42535)
+++ gc.c	(revision 42536)
@@ -3550,6 +3550,8 @@ gc_marks_test(rb_objspace_t *objspace) https://github.com/ruby/ruby/blob/trunk/gc.c#L3550
      *   exported_bitmap: after minor marking
      */
 
+    /* inhibit gc for st's operation */
+    dont_gc = 1;
 
     if(!monitored_object_table)
 	monitored_object_table = st_init_numtable();
@@ -3608,6 +3610,7 @@ gc_marks_test(rb_objspace_t *objspace) https://github.com/ruby/ruby/blob/trunk/gc.c#L3610
 	gc_free_exported_bitmaps(objspace, exported_bitmaps);
 	objspace->rgengc.have_saved_bitmaps = FALSE;
     }
+    dont_gc = 0;
 }
 #endif /* RGENGC_CHECK_MODE >= 2 */
 

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

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