diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | marshal.c | 3 | ||||
-rw-r--r-- | version.h | 2 |
3 files changed, 8 insertions, 2 deletions
@@ -1,3 +1,8 @@ +Sun Jun 15 23:18:15 2008 Yukihiro Matsumoto <matz@ruby-lang.org> + + * marshal.c (marshal_load): should initialize arg.data used for + reentrant check. [ruby-dev:34837] + Sun Jun 15 23:13:23 2008 Yukihiro Matsumoto <matz@ruby-lang.org> * parse.y (top_local_setup): fixed memory leak bug based on a @@ -89,7 +89,7 @@ reentrant_check(obj, sym) VALUE obj; ID sym; { - if (RBASIC(obj)->klass) { + if (obj && RBASIC(obj)->klass) { rb_raise(rb_eRuntimeError, "%s reentered", rb_id2name(sym)); } } @@ -1434,6 +1434,7 @@ marshal_load(argc, argv) } arg.src = port; arg.offset = 0; + arg.data = 0; major = r_byte(&arg); minor = r_byte(&arg); @@ -2,7 +2,7 @@ #define RUBY_RELEASE_DATE "2008-06-15" #define RUBY_VERSION_CODE 186 #define RUBY_RELEASE_CODE 20080615 -#define RUBY_PATCHLEVEL 214 +#define RUBY_PATCHLEVEL 215 #define RUBY_VERSION_MAJOR 1 #define RUBY_VERSION_MINOR 8 |