ruby-reference-manual:2150
From: Kouhei Sutou <kou@c...>
Date: Thu, 22 Apr 2010 22:07:54 +0900 (JST)
Subject: [ruby-reference-manual:2150] fopenがencodingオプションを捨てる
須藤です。
bitclust/lib/compat.rbのfopenが常にFile.openのencoding指定を
捨ててしまうので、1.9.1で動かすと
lib/bitclust/database.rb:136:in `strip': invalid byte sequence in UTF-8 (ArgumentError)
になってしまいます。
Index: lib/bitclust/compat.rb
===================================================================
--- lib/bitclust/compat.rb (リビジョン 4061)
+++ lib/bitclust/compat.rb (作業コピー)
@@ -31,10 +31,12 @@
end
def fopen(*args, &block)
- begin
- v = args[1].to_str
- args[1] = v[0, v.index(':')]
- rescue
+ unless "".respond_to?(:encoding)
+ begin
+ v = args[1].to_str
+ args[1] = v[0, v.index(':')]
+ rescue
+ end
end
File.open(*args, &block)
end
こういうのはチケットにした方がよいでしょうか?
できれば、↑のように小さいのは直接コミットしてしまいたかった
りするのですが。。。
--
ML: ruby-reference-manual@m...
使い方: http://QuickML.com/
-> 2150 2010-04-22 15:07 [kou@c... ] fopenがencodingオプションを捨てる 2151 2010-04-22 15:13 ┗[okkez000@g... ] 2152 2010-04-22 15:17 ┗[kou@c... ]