ruby-changes:5157
From: nobu <ko1@a...>
Date: Tue, 27 May 2008 22:10:59 +0900 (JST)
Subject: [ruby-changes:5157] Ruby:r16652 (trunk): * eval_error.c (error_handle): SystemExit and SignalException throws
nobu 2008-05-27 22:10:46 +0900 (Tue, 27 May 2008)
New Revision: 16652
Modified files:
trunk/ChangeLog
trunk/eval_error.c
Log:
* eval_error.c (error_handle): SystemExit and SignalException throws
TAG_RAISE but not TAG_FATAL.
http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/eval_error.c?r1=16652&r2=16651&diff_format=u
http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/ChangeLog?r1=16652&r2=16651&diff_format=u
Index: ChangeLog
===================================================================
--- ChangeLog (revision 16651)
+++ ChangeLog (revision 16652)
@@ -1,5 +1,8 @@
-Tue May 27 21:53:49 2008 Nobuyoshi Nakada <nobu@r...>
+Tue May 27 22:10:44 2008 Nobuyoshi Nakada <nobu@r...>
+ * eval_error.c (error_handle): SystemExit and SignalException throws
+ TAG_RAISE but not TAG_FATAL.
+
* thread.c (rb_thread_execute_interrupts): delay interrupts during
raising exceptions. [ruby-dev:34855]
Index: eval_error.c
===================================================================
--- eval_error.c (revision 16651)
+++ eval_error.c (revision 16652)
@@ -247,8 +247,7 @@
error_pos();
warn_printf(": unexpected throw\n");
break;
- case TAG_RAISE:
- case TAG_FATAL: {
+ case TAG_RAISE: {
VALUE errinfo = GET_THREAD()->errinfo;
if (rb_obj_is_kind_of(errinfo, rb_eSystemExit)) {
status = sysexit_status(errinfo);
@@ -261,6 +260,9 @@
}
break;
}
+ case TAG_FATAL:
+ error_print();
+ break;
default:
rb_bug("Unknown longjmp status %d", ex);
break;
--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/