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

* variable.c (rb_path2class): get rid of dangling pointer caused by

optimized out value.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_6@13146 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
shyouhei 2007-08-21 23:52:26 +00:00
parent e78da7081c
commit ae2d632c66
3 changed files with 14 additions and 4 deletions

View file

@ -1,3 +1,8 @@
Wed Aug 22 08:52:02 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* variable.c (rb_path2class): get rid of dangling pointer caused by
optimized out value.
Wed Aug 22 08:51:20 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/dl/lib/dl/win32.rb: seems that dl doesn't accept void argument.

View file

@ -241,16 +241,21 @@ rb_path2class(path)
const char *pbeg, *p;
ID id;
VALUE c = rb_cObject;
VALUE str = 0;
if (path[0] == '#') {
rb_raise(rb_eArgError, "can't retrieve anonymous class %s", path);
}
pbeg = p = path;
while (*p) {
VALUE str;
while (*p && *p != ':') p++;
str = rb_str_new(pbeg, p-pbeg);
if (str) {
RSTRING(str)->len = 0;
rb_str_cat(str, pbeg, p-pbeg);
}
else {
str = rb_str_new(pbeg, p-pbeg);
}
id = rb_intern(RSTRING(str)->ptr);
if (p[0] == ':') {
if (p[1] != ':') goto undefined_class;

View file

@ -2,7 +2,7 @@
#define RUBY_RELEASE_DATE "2007-08-22"
#define RUBY_VERSION_CODE 186
#define RUBY_RELEASE_CODE 20070822
#define RUBY_PATCHLEVEL 47
#define RUBY_PATCHLEVEL 48
#define RUBY_VERSION_MAJOR 1
#define RUBY_VERSION_MINOR 8