1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

* eval.c (get_backtrace): check the result more.

[ruby-dev:31261] [ruby-bugs-12398]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_5@13024 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
shyouhei 2007-08-15 21:40:24 +00:00
parent 55c3f7b644
commit 1845b36b50
4 changed files with 15 additions and 8 deletions

View file

@ -1,3 +1,8 @@
Thu Aug 16 06:39:19 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (get_backtrace): check the result more.
[ruby-dev:31261] [ruby-bugs-12398]
Thu Aug 16 06:32:25 2007 Nobuyoshi Nakada <nobu@ruby-lang.org> Thu Aug 16 06:32:25 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bignum.c (rb_big_lshift, rb_big_rshift): separated functions * bignum.c (rb_big_lshift, rb_big_rshift): separated functions

12
error.c
View file

@ -488,14 +488,14 @@ static VALUE
exc_backtrace(exc) exc_backtrace(exc)
VALUE exc; VALUE exc;
{ {
ID bt = rb_intern("bt"); static ID bt;
if (!rb_ivar_defined(exc, bt)) return Qnil; if (!bt) bt = rb_intern("bt");
return rb_ivar_get(exc, bt); return rb_attr_get(exc, bt);
} }
static VALUE VALUE
check_backtrace(bt) rb_check_backtrace(bt)
VALUE bt; VALUE bt;
{ {
long i; long i;
@ -532,7 +532,7 @@ exc_set_backtrace(exc, bt)
VALUE exc; VALUE exc;
VALUE bt; VALUE bt;
{ {
return rb_iv_set(exc, "bt", check_backtrace(bt)); return rb_iv_set(exc, "bt", rb_check_backtrace(bt));
} }
/* /*

4
eval.c
View file

@ -1200,6 +1200,8 @@ error_pos()
} }
} }
VALUE rb_check_backtrace(VALUE);
static VALUE static VALUE
get_backtrace(info) get_backtrace(info)
VALUE info; VALUE info;
@ -1207,7 +1209,7 @@ get_backtrace(info)
if (NIL_P(info)) return Qnil; if (NIL_P(info)) return Qnil;
info = rb_funcall(info, rb_intern("backtrace"), 0); info = rb_funcall(info, rb_intern("backtrace"), 0);
if (NIL_P(info)) return Qnil; if (NIL_P(info)) return Qnil;
return rb_check_array_type(info); return rb_check_backtrace(info);
} }
static void static void

View file

@ -2,7 +2,7 @@
#define RUBY_RELEASE_DATE "2007-08-16" #define RUBY_RELEASE_DATE "2007-08-16"
#define RUBY_VERSION_CODE 185 #define RUBY_VERSION_CODE 185
#define RUBY_RELEASE_CODE 20070816 #define RUBY_RELEASE_CODE 20070816
#define RUBY_PATCHLEVEL 80 #define RUBY_PATCHLEVEL 81
#define RUBY_VERSION_MAJOR 1 #define RUBY_VERSION_MAJOR 1
#define RUBY_VERSION_MINOR 8 #define RUBY_VERSION_MINOR 8