summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorKazuhiro NISHIYAMA <zn@mbf.nifty.com>2020-06-22 17:07:49 +0900
committerKazuhiro NISHIYAMA <zn@mbf.nifty.com>2020-06-22 17:11:24 +0900
commitd231b8f95b35d8a344cec4f62d7bbdf360a70e1c (patch)
tree37b46c5923d09583207eff110889bf739c0c70bc /lib
parent48d7ebe6fc7dec0856498ddb93695c3797ae0101 (diff)
Fix remove_entry error when path encoding is not compatible UTF-8
Diffstat (limited to 'lib')
-rw-r--r--lib/fileutils.rb6
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/fileutils.rb b/lib/fileutils.rb
index 438f3210f7..371a348159 100644
--- a/lib/fileutils.rb
+++ b/lib/fileutils.rb
@@ -1287,7 +1287,11 @@ module FileUtils
def entries
opts = {}
- opts[:encoding] = fu_windows? ? ::Encoding::UTF_8 : path.encoding
+ if fu_windows? && ::Encoding.compatible?(::Encoding::UTF_8, path.encoding)
+ opts[:encoding] = ::Encoding::UTF_8
+ else
+ opts[:encoding] = path.encoding
+ end
files = if Dir.respond_to?(:children)
Dir.children(path, **opts)