summaryrefslogtreecommitdiffstats
path: root/parse.y
diff options
context:
space:
mode:
Diffstat (limited to 'parse.y')
-rw-r--r--parse.y4
1 files changed, 3 insertions, 1 deletions
diff --git a/parse.y b/parse.y
index 4428386e5..d79dc6744 100644
--- a/parse.y
+++ b/parse.y
@@ -2118,6 +2118,8 @@ yycompile(f, line)
int n;
NODE *node = 0;
+ f = strdup(f);
+
if (!compile_for_eval && rb_safe_level() == 0 &&
rb_const_defined(rb_cObject, rb_intern("SCRIPT_LINES__"))) {
VALUE hash, fname;
@@ -2228,7 +2230,7 @@ rb_compile_file(f, file, start)
lex_pbeg = lex_p = lex_pend = 0;
ruby_sourceline = start - 1;
- return yycompile(strdup(f), start);
+ return yycompile(f, start);
}
static inline int