From 6adbdb56edcf62c11229e1c9c6f75656700f1c5f Mon Sep 17 00:00:00 2001 From: Kazuhiro NISHIYAMA Date: Mon, 22 Jun 2020 18:34:24 +0900 Subject: Fix Encoding::CompatibilityError in `FileUtils::Entry_#join` --- lib/fileutils.rb | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'lib') diff --git a/lib/fileutils.rb b/lib/fileutils.rb index 438f3210f7..c8f4b49067 100644 --- a/lib/fileutils.rb +++ b/lib/fileutils.rb @@ -1557,7 +1557,15 @@ module FileUtils def join(dir, base) return File.path(dir) if not base or base == '.' return File.path(base) if not dir or dir == '.' - File.join(dir, base) + begin + File.join(dir, base) + rescue EncodingError + if fu_windows? + File.join(dir.encode(::Encoding::UTF_8), base.encode(::Encoding::UTF_8)) + else + raise + end + end end if File::ALT_SEPARATOR -- cgit v1.2.3