diff --git a/ChangeLog b/ChangeLog index 073f3eeb5a..4b7e28345e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +Fri Aug 7 03:22:50 2009 Nobuyoshi Nakada + + * eval.c (rb_exc_raise, rb_exc_fatal): nil is used to reraise. + +Wed Aug 5 12:54:00 2009 Nobuyoshi Nakada + + * eval.c (rb_exc_raise, rb_exc_fatal): require exception object. + [ruby-core:24767] + Fri Aug 7 01:49:41 2009 Akinori MUSHA * ext/digest/sha2/sha2.c: The ULL suffix is not supported by diff --git a/eval.c b/eval.c index 3cbc60f47c..49d544f1c4 100644 --- a/eval.c +++ b/eval.c @@ -413,12 +413,18 @@ rb_longjmp(int tag, VALUE mesg) void rb_exc_raise(VALUE mesg) { + if (!NIL_P(mesg)) { + mesg = rb_make_exception(1, &mesg); + } rb_longjmp(TAG_RAISE, mesg); } void rb_exc_fatal(VALUE mesg) { + if (!NIL_P(mesg)) { + mesg = rb_make_exception(1, &mesg); + } rb_longjmp(TAG_FATAL, mesg); } diff --git a/version.h b/version.h index 24ffab997c..36f267d598 100644 --- a/version.h +++ b/version.h @@ -1,5 +1,5 @@ #define RUBY_VERSION "1.9.1" -#define RUBY_PATCHLEVEL 280 +#define RUBY_PATCHLEVEL 281 #define RUBY_VERSION_MAJOR 1 #define RUBY_VERSION_MINOR 9 #define RUBY_VERSION_TEENY 1