[前][次][番号順一覧][スレッド一覧][生データ]

yarv-diff:319

From: ko1 atdot.net
Date: 11 Apr 2006 02:30:46 -0000
Subject: [yarv-diff:319] r484 - trunk

Author: ko1
Date: 2006-04-11 11:30:45 +0900 (Tue, 11 Apr 2006)
New Revision: 484

Modified:
   trunk/
   trunk/ChangeLog
   trunk/compile.c
   trunk/eval.c
   trunk/vm.c
Log:
 r747@lermite:  ko1 | 2006-04-07 20:31:46 +0900
 	* compile.c : fix miss about range of catch "next"
 
 	* eval.c : add braces
 



Property changes on: trunk
___________________________________________________________________
Name: svk:merge
   - 81cd9672-7512-7e48-ae48-6936450e977d:/local/yarv/trunk:745
   + 81cd9672-7512-7e48-ae48-6936450e977d:/local/yarv/trunk:747

Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog	2006-04-07 02:18:53 UTC (rev 483)
+++ trunk/ChangeLog	2006-04-11 02:30:45 UTC (rev 484)
@@ -4,6 +4,13 @@
 #  from Mon, 03 May 2004 01:24:19 +0900
 #
 
+2006-04-07(Fri) 20:25:03 +0900  Koichi Sasada  <ko1 atdot.net>
+
+	* compile.c : fix miss about range of catch "next"
+
+	* eval.c : add braces
+
+
 2006-04-07(Fri) 11:09:43 +0900  Koichi Sasada  <ko1 atdot.net>
 
 	* common.mk : fix some make rules

Modified: trunk/compile.c
===================================================================
--- trunk/compile.c	2006-04-07 02:18:53 UTC (rev 483)
+++ trunk/compile.c	2006-04-11 02:30:45 UTC (rev 484)
@@ -223,7 +223,7 @@
 
 	    /* wide range catch handler must put at last */
 	    ADD_CATCH_ENTRY(CATCH_TYPE_REDO, start, end, 0, start);
-	    ADD_CATCH_ENTRY(CATCH_TYPE_NEXT, start, start, 0, end);
+	    ADD_CATCH_ENTRY(CATCH_TYPE_NEXT, start, end, 0, end);
 	}
 	else if (iseq->type == ISEQ_TYPE_TOP) {
 	    set_localtbl(iseq, GET_THREAD()->top_local_tbl);

Modified: trunk/eval.c
===================================================================
--- trunk/eval.c	2006-04-07 02:18:53 UTC (rev 483)
+++ trunk/eval.c	2006-04-11 02:30:45 UTC (rev 484)
@@ -260,11 +260,15 @@
     int state;
     static int ex;
 
-    if (ruby_nerrs > 0)
+    if (ruby_nerrs > 0) {
 	exit(EXIT_FAILURE);
+    }
+
     state = ruby_exec();
-    if (state && !ex)
+
+    if (state && !ex) {
 	ex = state;
+    }
     ruby_stop(ex);
 }
 

Modified: trunk/vm.c
===================================================================
--- trunk/vm.c	2006-04-07 02:18:53 UTC (rev 483)
+++ trunk/vm.c	2006-04-11 02:30:45 UTC (rev 484)
@@ -1597,8 +1597,8 @@
 	  search_restart_point:
 	    for (i = 0; i < cfp->iseq->catch_table_size; i++) {
 		entry = &cfp->iseq->catch_table[i];
+
 		if (entry->start < epc && entry->end >= epc) {
-
 		    if (entry->type == CATCH_TYPE_ENSURE) {
 			catch_iseqval = entry->iseq;
 			cont_pc = entry->cont;


-- 
ML: yarv-diff quickml.atdot.net
Info: http://www.atdot.net/~ko1/quickml

[前][次][番号順一覧][スレッド一覧][生データ]