summaryrefslogtreecommitdiff
path: root/file.c
diff options
context:
space:
mode:
Diffstat (limited to 'file.c')
-rw-r--r--file.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/file.c b/file.c
index bc072a93d7..8f1a8a8c64 100644
--- a/file.c
+++ b/file.c
@@ -2788,10 +2788,6 @@ ntfs_tail(const char *path)
buflen = RSTRING_LEN(result),\
pend = p + buflen)
-#define SET_EXTERNAL_ENCODING() (\
- (void)(extenc || (extenc = rb_default_external_encoding())),\
- rb_enc_associate(result, extenc))
-
VALUE
rb_home_dir(const char *user, VALUE result)
{
@@ -2842,7 +2838,6 @@ file_expand_path(VALUE fname, VALUE dname, int abs_mode, VALUE result)
char *buf, *p, *pend, *root;
size_t buflen, dirlen, bdiff;
int tainted;
- rb_encoding *extenc = 0;
s = StringValuePtr(fname);
BUFINIT();
@@ -2898,7 +2893,7 @@ file_expand_path(VALUE fname, VALUE dname, int abs_mode, VALUE result)
BUFCHECK(dirlen > buflen);
strcpy(buf, dir);
xfree(dir);
- SET_EXTERNAL_ENCODING();
+ rb_enc_associate_index(result, rb_filesystem_encindex());
}
p = chompdirsep(skiproot(buf));
s += 2;
@@ -2918,7 +2913,7 @@ file_expand_path(VALUE fname, VALUE dname, int abs_mode, VALUE result)
BUFCHECK(dirlen > buflen);
strcpy(buf, dir);
xfree(dir);
- SET_EXTERNAL_ENCODING();
+ rb_enc_associate_index(result, rb_filesystem_encindex());
}
#if defined DOSISH || defined __CYGWIN__
if (isdirsep(*s)) {