diff options
author | ryan <ryan@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2011-01-12 22:05:05 +0000 |
---|---|---|
committer | ryan <ryan@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2011-01-12 22:05:05 +0000 |
commit | 36a0e432f26cc3e52706c7be983a4c5f66844d29 (patch) | |
tree | 18d2ef1d273eec128ac12e9a19d29da4c318d549 /error.c | |
parent | b404cbac7723558f42865ff78ed79aa313a72d9e (diff) | |
download | ruby-36a0e432f26cc3e52706c7be983a4c5f66844d29.tar.gz |
Exception#to_s should actually call to_s.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30531 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'error.c')
-rw-r--r-- | error.c | 5 |
1 files changed, 4 insertions, 1 deletions
@@ -522,9 +522,12 @@ static VALUE exc_to_s(VALUE exc) { VALUE mesg = rb_attr_get(exc, rb_intern("mesg")); + VALUE r = Qnil; if (NIL_P(mesg)) return rb_class_name(CLASS_OF(exc)); - return rb_String(mesg); + r = rb_String(mesg); + OBJ_INFECT(r, exc); + return r; } /* |