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

ruby-changes:5074

From: matz <ko1@a...>
Date: Sat, 24 May 2008 22:29:16 +0900 (JST)
Subject: [ruby-changes:5074] Ruby:r16569 (ruby_1_8): * marshal.c (marshal_load): should initialize arg.data used for

matz	2008-05-24 22:29:07 +0900 (Sat, 24 May 2008)

  New Revision: 16569

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

  Log:
    * marshal.c (marshal_load): should initialize arg.data used for
      reentrant check.  [ruby-dev:34837]

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/branches/ruby_1_8/ChangeLog?r1=16569&r2=16568&diff_format=u
  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/branches/ruby_1_8/marshal.c?r1=16569&r2=16568&diff_format=u

Index: ruby_1_8/ChangeLog
===================================================================
--- ruby_1_8/ChangeLog	(revision 16568)
+++ ruby_1_8/ChangeLog	(revision 16569)
@@ -1,3 +1,8 @@
+Sat May 24 22:27:44 2008  Yukihiro Matsumoto  <matz@r...>
+
+	* marshal.c (marshal_load): should initialize arg.data used for
+	  reentrant check.  [ruby-dev:34837]
+
 Sat May 24 00:34:59 2008  Tanaka Akira  <akr@f...>
 
 	* lib/rational.rb (Rational#to_i): fix rdoc.  Rational(-7,4).to_i
Index: ruby_1_8/marshal.c
===================================================================
--- ruby_1_8/marshal.c	(revision 16568)
+++ ruby_1_8/marshal.c	(revision 16569)
@@ -89,7 +89,7 @@
     VALUE obj;
     ID sym;
 {
-    if (RBASIC(obj)->klass) {
+    if (obj && RBASIC(obj)->klass) {
         rb_raise(rb_eRuntimeError, "%s reentered", rb_id2name(sym));
     }
 }
@@ -1431,6 +1431,7 @@
     }
     arg.src = port;
     arg.offset = 0;
+    arg.data = 0;
 
     major = r_byte(&arg);
     minor = r_byte(&arg);

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

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