From 60a7b3a935ebb02703a80f4aa8888d3ac3fcfc98 Mon Sep 17 00:00:00 2001 From: nobu Date: Tue, 19 Oct 2004 15:25:49 +0000 Subject: [PATCH] * eval.c (search_required): required name must not be changed before loading. [ruby-dev:24492] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7075 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ eval.c | 6 +----- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/ChangeLog b/ChangeLog index bd712c3daa..0474f92093 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Wed Oct 20 00:25:41 2004 Nobuyoshi Nakada + + * eval.c (search_required): required name must not be changed before + loading. [ruby-dev:24492] + Tue Oct 19 23:59:46 2004 Nobuyoshi Nakada * eval.c (rb_require_safe): provide the feature after loaded. diff --git a/eval.c b/eval.c index 220af68294..81d380eb84 100644 --- a/eval.c +++ b/eval.c @@ -6678,7 +6678,7 @@ search_required(fname, featurep, path) char *ext, *ftptr; int type; - *featurep = fname; + *featurep = fname = rb_str_new4(fname); *path = 0; ext = strrchr(ftptr = RSTRING(fname)->ptr, '.'); if (ext && !strchr(ext, '/')) { @@ -6777,10 +6777,6 @@ rb_require_safe(fname, safe) /* partial state */ ftptr = ruby_strdup(RSTRING(feature)->ptr); st_insert(loading_tbl, (st_data_t)ftptr, (st_data_t)curr_thread); - if (feature == fname && !OBJ_FROZEN(feature)) { - feature = rb_str_dup(feature); - OBJ_FREEZE(feature); - } rb_load(path, 0); break;