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

ruby-changes:12686

From: nobu <ko1@a...>
Date: Wed, 5 Aug 2009 12:39:52 +0900 (JST)
Subject: [ruby-changes:12686] Ruby:r24401 (trunk): * eval.c (rb_longjmp): reset raised flag before fatal error.

nobu	2009-08-05 12:39:29 +0900 (Wed, 05 Aug 2009)

  New Revision: 24401

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

  Log:
    * eval.c (rb_longjmp): reset raised flag before fatal error.

  Modified files:
    trunk/ChangeLog
    trunk/eval.c
    trunk/eval_error.c

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 24400)
+++ ChangeLog	(revision 24401)
@@ -1,3 +1,7 @@
+Wed Aug  5 12:39:23 2009  Nobuyoshi Nakada  <nobu@r...>
+
+	* eval.c (rb_longjmp): reset raised flag before fatal error.
+
 Wed Aug  5 10:20:39 2009  NARUSE, Yui  <naruse@r...>
 
 	* re.c (rb_reg_preprocess_dregexp): add options to arguments.
Index: eval_error.c
===================================================================
--- eval_error.c	(revision 24400)
+++ eval_error.c	(revision 24401)
@@ -87,10 +87,12 @@
     if (NIL_P(errat)) {
 	const char *file = rb_sourcefile();
 	int line = rb_sourceline();
-	if (file)
+	if (!file)
+	    warn_printf("%d", line);
+	else if (!line)
+	    warn_printf("%s", file, line);
+	else
 	    warn_printf("%s:%d", file, line);
-	else
-	    warn_printf("%d", line);
     }
     else if (RARRAY_LEN(errat) == 0) {
 	error_pos();
Index: eval.c
===================================================================
--- eval.c	(revision 24400)
+++ eval.c	(revision 24401)
@@ -345,6 +345,7 @@
 
     if (rb_threadptr_set_raised(th)) {
 	th->errinfo = exception_error;
+	rb_threadptr_reset_raised(th);
 	JUMP_TAG(TAG_FATAL);
     }
 

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

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