diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-05-27 13:10:46 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-05-27 13:10:46 +0000 |
commit | 1cdd1249e82ef4870fd60f5e46cbf639a36cf771 (patch) | |
tree | cbce7189579d51eec45af528b36632cb365155b9 /eval_error.c | |
parent | bcb57421cb140e708a78911ddf4cd553d6b60d52 (diff) |
* eval_error.c (error_handle): SystemExit and SignalException throws
TAG_RAISE but not TAG_FATAL.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16652 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'eval_error.c')
-rw-r--r-- | eval_error.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/eval_error.c b/eval_error.c index aae7655be2..d22b865e19 100644 --- a/eval_error.c +++ b/eval_error.c @@ -247,8 +247,7 @@ error_handle(int ex) 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 @@ error_handle(int ex) } break; } + case TAG_FATAL: + error_print(); + break; default: rb_bug("Unknown longjmp status %d", ex); break; |