From b30fc2616c0428713e0b4b5426485fc2c3c0c7b7 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Tue, 2 Feb 2016 18:31:36 +0000 Subject: linux: workaround Ruby 2.3 change File.readlink (and thus Pathname#realpath) returns the filesystem encoding (Encoding.find "filesystem"). The filesystem encoding defaults to the locale encoding, which tends to be UTF-8. This is true even on *nix filesystems which can have any byte besides "\0". ref: https://bugs.ruby-lang.org/issues/12034 ref: http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-core/73593 --- lib/raindrops/linux.rb | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/raindrops/linux.rb b/lib/raindrops/linux.rb index 7cfb653..a38fa64 100644 --- a/lib/raindrops/linux.rb +++ b/lib/raindrops/linux.rb @@ -47,6 +47,7 @@ module Raindrops::Linux if File.symlink?(path) link = path path = Pathname.new(link).realpath.to_s + path.force_encoding(Encoding::BINARY) if defined?(Encoding) rv[link] = rv[path] # vivify ListenerStats else rv[path] # vivify ListenerStats -- cgit v1.2.3-24-ge0c7