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

ruby-changes:19476

From: yugui <ko1@a...>
Date: Thu, 12 May 2011 06:26:44 +0900 (JST)
Subject: [ruby-changes:19476] Ruby:r31514 (ruby_1_9_2): merges a part of r30840 from trunk into ruby_1_9_2.

yugui	2011-05-12 06:23:40 +0900 (Thu, 12 May 2011)

  New Revision: 31514

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

  Log:
    merges a part of r30840 from trunk into ruby_1_9_2.
    --
    * gc.h (RUBY_FREE_UNLESS_NULL): get rid of double free.
      [ruby-core:35192]

  Modified files:
    branches/ruby_1_9_2/ChangeLog
    branches/ruby_1_9_2/gc.h
    branches/ruby_1_9_2/version.h
    branches/ruby_1_9_2/vm.c

Index: ruby_1_9_2/ChangeLog
===================================================================
--- ruby_1_9_2/ChangeLog	(revision 31513)
+++ ruby_1_9_2/ChangeLog	(revision 31514)
@@ -1,3 +1,10 @@
+Fri Feb 11 19:45:26 2011  Nobuyoshi Nakada  <nobu@r...>
+
+	* eval.c (ruby_cleanup): use rb_ary_free to free internal object.
+
+	* gc.h (RUBY_FREE_UNLESS_NULL): get rid of double free.
+	  [ruby-core:35192]
+
 Fri Feb 11 16:57:03 2011  Nobuyoshi Nakada  <nobu@r...>
 
 	* test/ruby/test_transcode.rb (test_from_cp50221): fix wrong
Index: ruby_1_9_2/gc.h
===================================================================
--- ruby_1_9_2/gc.h	(revision 31513)
+++ ruby_1_9_2/gc.h	(revision 31514)
@@ -58,7 +58,7 @@
 #endif
 
 #define RUBY_MARK_UNLESS_NULL(ptr) if(RTEST(ptr)){rb_gc_mark(ptr);}
-#define RUBY_FREE_UNLESS_NULL(ptr) if(ptr){ruby_xfree(ptr);}
+#define RUBY_FREE_UNLESS_NULL(ptr) if(ptr){ruby_xfree(ptr);(ptr)=NULL;}
 
 #if STACK_GROW_DIRECTION > 0
 # define STACK_UPPER(x, a, b) a
Index: ruby_1_9_2/vm.c
===================================================================
--- ruby_1_9_2/vm.c	(revision 31513)
+++ ruby_1_9_2/vm.c	(revision 31514)
@@ -221,7 +221,7 @@
 {
     RUBY_FREE_ENTER("env");
     if (ptr) {
-	const rb_env_t * const env = ptr;
+	rb_env_t *const env = ptr;
 	RUBY_FREE_UNLESS_NULL(env->env);
 	ruby_xfree(ptr);
     }
Index: ruby_1_9_2/version.h
===================================================================
--- ruby_1_9_2/version.h	(revision 31513)
+++ ruby_1_9_2/version.h	(revision 31514)
@@ -1,5 +1,5 @@
 #define RUBY_VERSION "1.9.2"
-#define RUBY_PATCHLEVEL 198
+#define RUBY_PATCHLEVEL 199
 #define RUBY_VERSION_MAJOR 1
 #define RUBY_VERSION_MINOR 9
 #define RUBY_VERSION_TEENY 1

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

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