From: "三村 益隆" Date: 2010-01-02T22:10:54+09:00 Subject: [ruby-dev:39949] [Bug #2546] REXMLでString::eachを使用しているため1.9でNo Method Error Bug #2546: REXMLでString::eachを使用しているため1.9でNo Method Error http://redmine.ruby-lang.org/issues/show/2546 起票者: 三村 益隆 ステータス: Open, 優先度: Normal カテゴリ: lib, Target version: 1.9.x ruby -v: ruby 1.9.2dev (2010-01-02 trunk 26229) takkanm です。 RubySpecを動かしていて気付いたのですが、1.9に添付されているREXMLにてString::eachを使用していて1.9で動かない箇所(lib/rexml/text.rb)があります。 ソースを見ると以下のようにeach_lineに変更すれば問題ないようですが、いかがでしょうか? --- a/lib/rexml/text.rb +++ b/lib/rexml/text.rb @@ -274,7 +274,7 @@ module REXML def indent_text(string, level=1, style="\t", indentfirstline=true) return string if level < 0 new_string = '' - string.each { |line| + string.each_line { |line| indent_string = style * level new_line = (indent_string + line).sub(/[\s]+$/,'') new_string << new_line 以上、よろしくお願いします。 ---------------------------------------- http://redmine.ruby-lang.org