diff --git a/ChangeLog b/ChangeLog index 60bb889b6a..85065ad295 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Thu Jul 25 17:17:52 2013 Nobuyoshi Nakada + + * file.c (rb_file_expand_path_internal): should clear coderange after + copying user name as binary data. + Thu Jul 25 16:17:55 2013 Koichi Sasada * encoding.c (check_encoding): Check T_DATA or not. diff --git a/file.c b/file.c index be1fa283ca..a72cdd0719 100644 --- a/file.c +++ b/file.c @@ -2993,6 +2993,7 @@ rb_file_expand_path_internal(VALUE fname, VALUE dname, int abs_mode, int long_na userlen = s - b; BUFCHECK(bdiff + userlen >= buflen); memcpy(p, b, userlen); + ENC_CODERANGE_CLEAR(result); rb_str_set_len(result, userlen); rb_enc_associate(result, enc); rb_home_dir_of(result, result);