diff options
author | kou <kou@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2012-11-03 04:46:06 +0000 |
---|---|---|
committer | kou <kou@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2012-11-03 04:46:06 +0000 |
commit | bdbc8c5b74b0b17da710c9f174a920e4c8b3cb02 (patch) | |
tree | 0f1f1672dbc832dd5f95ce52f6a89019c141cbd0 /lib | |
parent | 4aca275e9c0778eafed9a54467e5446cebac48fe (diff) |
Revert r37439 and r37441
r37439:
* lib/rexml/xmldecl.rb (REXML::XMLDecl): Stop using REXML::Encoding
module because XMLDecl doesn't convert encoding. This causes
removing XML encoding name normalization (encoding.upcase).
Encoding name in XML declaration is what user specifies.
I think this is reasonable change.
* test/rexml/test_xml_declaration.rb: Add tests for the above change.
r37441:
* test/rexml/test_core.rb (Tester#test_ticket_88): Follow the
change that encoding name in XML declaration isn't normalized.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37446 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib')
-rw-r--r-- | lib/rexml/xmldecl.rb | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/lib/rexml/xmldecl.rb b/lib/rexml/xmldecl.rb index 783c9233dc..eac4b17971 100644 --- a/lib/rexml/xmldecl.rb +++ b/lib/rexml/xmldecl.rb @@ -4,6 +4,8 @@ require 'rexml/source' module REXML # NEEDS DOCUMENTATION class XMLDecl < Child + include Encoding + DEFAULT_VERSION = "1.0"; DEFAULT_ENCODING = "UTF-8"; DEFAULT_STANDALONE = "no"; @@ -11,7 +13,7 @@ module REXML STOP = '\?>'; attr_accessor :version, :standalone - attr_reader :encoding, :writeencoding, :writethis + attr_reader :writeencoding, :writethis def initialize(version=DEFAULT_VERSION, encoding=nil, standalone=nil) @writethis = true @@ -51,7 +53,7 @@ module REXML def ==( other ) other.kind_of?(XMLDecl) and other.version == @version and - other.encoding.upcase == self.encoding.upcase and + other.encoding == self.encoding and other.standalone == @standalone end @@ -66,13 +68,14 @@ module REXML end alias :stand_alone? :standalone + alias :old_enc= :encoding= def encoding=( enc ) if enc.nil? - @encoding = "UTF-8" + self.old_enc = "UTF-8" @writeencoding = false else - @encoding = enc + self.old_enc = enc @writeencoding = true end self.dowrite |