diff --git a/ChangeLog b/ChangeLog index f58c58d273..25049d2619 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,4 +1,6 @@ -Sat Jun 13 14:57:36 2009 Nobuyoshi Nakada +Sat Jun 13 14:58:57 2009 Nobuyoshi Nakada + + * load.c (rb_require_safe): FilePathValue() implies rb_str_new4(). * load.c (rb_mod_autoload): try conversion to path like as require. [ruby-core:23834] diff --git a/load.c b/load.c index 645dca2040..6e554f1d8b 100644 --- a/load.c +++ b/load.c @@ -545,7 +545,7 @@ load_ext(VALUE path) VALUE rb_require_safe(VALUE fname, int safe) { - VALUE result = Qnil; + volatile VALUE result = Qnil; rb_thread_t *th = GET_THREAD(); volatile VALUE errinfo = th->errinfo; int state; @@ -563,7 +563,6 @@ rb_require_safe(VALUE fname, int safe) rb_set_safe_level_force(safe); FilePathValue(fname); - RB_GC_GUARD(fname) = rb_str_new4(fname); rb_set_safe_level_force(0); found = search_required(fname, &path); if (found) {