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

ruby-changes:37951

From: ko1 <ko1@a...>
Date: Fri, 20 Mar 2015 13:28:04 +0900 (JST)
Subject: [ruby-changes:37951] ko1:r50032 (trunk): revert r50031 because it includes unexpected patch

ko1	2015-03-20 13:27:45 +0900 (Fri, 20 Mar 2015)

  New Revision: 50032

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

  Log:
    revert r50031 because it includes unexpected patch

  Modified files:
    trunk/ChangeLog
    trunk/gc.c
    trunk/vm.c
Index: ChangeLog
===================================================================
--- ChangeLog	(revision 50031)
+++ ChangeLog	(revision 50032)
@@ -1,9 +1,3 @@ https://github.com/ruby/ruby/blob/trunk/ChangeLog#L1
-Fri Mar 20 12:38:36 2015  Koichi Sasada  <ko1@a...>
-
-	* gc.c (obj_info): obj_info() can receive internal objects.
-
-	* gc.c (check_rvalue_consistency): obj_info() returns const char *.
-
 Fri Mar 20 12:14:37 2015  Koichi Sasada  <ko1@a...>
 
 	* gc.c (obj_info): show class name and T_DATA type_name.
Index: gc.c
===================================================================
--- gc.c	(revision 50031)
+++ gc.c	(revision 50032)
@@ -998,8 +998,8 @@ check_rvalue_consistency(const VALUE obj https://github.com/ruby/ruby/blob/trunk/gc.c#L998
 	const int marking_bit = RVALUE_MARKING_BITMAP(obj) != 0, remembered_bit = marking_bit;
 	const int age = RVALUE_FLAGS_AGE(RBASIC(obj)->flags);
 
-	if (BUILTIN_TYPE(obj) == T_NONE)   rb_bug("check_rvalue_consistency: %s is T_NONE", obj_info(obj));
-	if (BUILTIN_TYPE(obj) == T_ZOMBIE) rb_bug("check_rvalue_consistency: %s is T_ZOMBIE", obj_info(obj));
+	if (BUILTIN_TYPE(obj) == T_NONE)   rb_bug("check_rvalue_consistency: %p is T_NONE", obj_info(obj));
+	if (BUILTIN_TYPE(obj) == T_ZOMBIE) rb_bug("check_rvalue_consistency: %p is T_ZOMBIE", obj_info(obj));
 	obj_memsize_of((VALUE)obj, FALSE);
 
 	/* check generation
@@ -8817,16 +8817,19 @@ obj_info(VALUE obj) https://github.com/ruby/ruby/blob/trunk/gc.c#L8817
 	     C(RVALUE_WB_UNPROTECTED_BITMAP(obj), "U"),
 	     obj_type_name(obj));
 
-    if (internal_object_p(obj)) {
-	/* ignore */
-    }
-    else if (RBASIC(obj)->klass == 0) {
-	snprintf(buff, OBJ_INFO_BUFFERS_SIZE, "%s (temporary internal)", buff);
-    }
-    else {
-	VALUE class_path = rb_class_path_cached(RBASIC(obj)->klass);
-	if (!NIL_P(class_path)) {
-	    snprintf(buff, OBJ_INFO_BUFFERS_SIZE, "%s (%s)", buff, RSTRING_PTR(class_path));
+    switch (type) {
+      case T_NODE:
+      case T_IMEMO:
+	break;
+      default:
+	if (RBASIC(obj)->klass == 0) {
+	    snprintf(buff, OBJ_INFO_BUFFERS_SIZE, "%s (internal)", buff);
+	}
+	else {
+	    VALUE class_path = rb_class_path_cached(RBASIC(obj)->klass);
+	    if (!NIL_P(class_path)) {
+		snprintf(buff, OBJ_INFO_BUFFERS_SIZE, "%s (%s)", buff, RSTRING_PTR(class_path));
+	    }
 	}
     }
 
Index: vm.c
===================================================================
--- vm.c	(revision 50031)
+++ vm.c	(revision 50032)
@@ -1492,10 +1492,6 @@ vm_exec(rb_thread_t *th) https://github.com/ruby/ruby/blob/trunk/vm.c#L1492
 			      case VM_FRAME_MAGIC_LAMBDA:
 				EXEC_EVENT_HOOK_AND_POP_FRAME(th, RUBY_EVENT_B_RETURN, th->cfp->self, 0, 0, Qnil);
 				break;
-			      case VM_FRAME_MAGIC_METHOD:
-				RUBY_DTRACE_METHOD_RETURN_HOOK(th, 0, 0);
-				EXEC_EVENT_HOOK_AND_POP_FRAME(th, RUBY_EVENT_RETURN, th->cfp->self, 0, 0, Qnil);
-				break;
 			    }
 
 			    vm_pop_frame(th);

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

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