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

ruby-changes:6859

From: nobu <ko1@a...>
Date: Wed, 6 Aug 2008 05:08:49 +0900 (JST)
Subject: [ruby-changes:6859] Ruby:r18377 (trunk): * array.c (rb_ary_sort_bang): reset to real class.

nobu	2008-08-06 05:08:33 +0900 (Wed, 06 Aug 2008)

  New Revision: 18377

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

  Log:
    * array.c (rb_ary_sort_bang): reset to real class.
    
    * file.c (rb_find_file_ext, rb_find_file): ditto.
    
    * io.c (io_reopen): ditto.

  Modified files:
    trunk/ChangeLog
    trunk/array.c
    trunk/file.c
    trunk/io.c

Index: array.c
===================================================================
--- array.c	(revision 18376)
+++ array.c	(revision 18377)
@@ -1562,7 +1562,7 @@
 	RARRAY(tmp)->ptr = 0;
 	RARRAY(tmp)->len = 0;
 	RARRAY(tmp)->aux.capa = 0;
-	RBASIC(tmp)->klass = RBASIC(ary)->klass;
+	RBASIC(tmp)->klass = rb_cArray;
     }
     return ary;
 }
Index: ChangeLog
===================================================================
--- ChangeLog	(revision 18376)
+++ ChangeLog	(revision 18377)
@@ -1,3 +1,11 @@
+Wed Aug  6 05:08:30 2008  Nobuyoshi Nakada  <nobu@r...>
+
+	* array.c (rb_ary_sort_bang): reset to real class.
+
+	* file.c (rb_find_file_ext, rb_find_file): ditto.
+
+	* io.c (io_reopen): ditto.
+
 Wed Aug  6 03:56:39 2008  Nobuyoshi Nakada  <nobu@r...>
 
 	* common.mk (transcodes), tool/build-transcode: generates transcode
Index: io.c
===================================================================
--- io.c	(revision 18376)
+++ io.c	(revision 18377)
@@ -4500,7 +4500,7 @@
 	rb_io_binmode(io);
     }
 
-    RBASIC(io)->klass = RBASIC(nfile)->klass;
+    RBASIC(io)->klass = rb_obj_class(nfile);
     return io;
 }
 
Index: file.c
===================================================================
--- file.c	(revision 18376)
+++ file.c	(revision 18377)
@@ -4506,7 +4506,7 @@
 	    if (RSTRING_LEN(str) == 0) continue;
 	    file_expand_path(fname, str, tmp);
 	    if (file_load_ok(RSTRING_PTR(tmp))) {
-		RBASIC(tmp)->klass = RBASIC(*filep)->klass;
+		RBASIC(tmp)->klass = rb_obj_class(*filep);
 		OBJ_FREEZE(tmp);
 		*filep = tmp;
 		return j+1;
@@ -4572,7 +4572,7 @@
 	}
 	return 0;
       found:
-	RBASIC(tmp)->klass = RBASIC(path)->klass;
+	RBASIC(tmp)->klass = rb_obj_class(path);
 	OBJ_FREEZE(tmp);
     }
     else {

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

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