diff options
author | mame <mame@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2010-03-04 13:54:13 +0000 |
---|---|---|
committer | mame <mame@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2010-03-04 13:54:13 +0000 |
commit | 6bec06674c2a51af865a5d8d7c31d93799f98d59 (patch) | |
tree | d9b6adc39444d41591c5676008672b8113d7e51e | |
parent | ae2065a285b8ba32e7323ecf5875100ba546c2d9 (diff) |
* eval.c (setup_exception): avoid line number 0 when setting
$DEBUG=true. [ruby-dev:39116]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26817 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | eval.c | 7 |
2 files changed, 11 insertions, 1 deletions
@@ -1,3 +1,8 @@ +Thu Mar 4 22:49:42 2010 Yusuke Endoh <mame@tsg.ne.jp> + + * eval.c (setup_exception): avoid line number 0 when setting + $DEBUG=true. [ruby-dev:39116] + Thu Mar 4 22:45:02 2010 Yusuke Endoh <mame@tsg.ne.jp> * io.c (io_s_write, io_s_binwrite): add File#write and #binwrite. @@ -394,11 +394,16 @@ setup_exception(rb_thread_t *th, int tag, volatile VALUE mesg) PUSH_TAG(); if ((status = EXEC_TAG()) == 0) { RB_GC_GUARD(e) = rb_obj_as_string(e); - if (file) { + if (file && line) { warn_printf("Exception `%s' at %s:%d - %s\n", rb_obj_classname(th->errinfo), file, line, RSTRING_PTR(e)); } + else if (file) { + warn_printf("Exception `%s' at %s - %s\n", + rb_obj_classname(th->errinfo), + file, RSTRING_PTR(e)); + } else { warn_printf("Exception `%s' - %s\n", rb_obj_classname(th->errinfo), |