1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

* lib/rexml/parsers/baseparser.rb, test/rexml/test_comment.rb:

allow a single hyphen in comment. [Bug 5278]
  Reported by Thomas Fritzsche. Thanks!!!


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33210 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
kou 2011-09-07 14:42:44 +00:00
parent 6b3feab965
commit 2bb6fcb6fd
3 changed files with 32 additions and 1 deletions

View file

@ -1,3 +1,9 @@
Wed Sep 7 23:41:24 2011 Kouhei Sutou <kou@cozmixng.org>
* lib/rexml/parsers/baseparser.rb, test/rexml/test_comment.rb:
allow a single hyphen in comment. [Bug 5278]
Reported by Thomas Fritzsche. Thanks!!!
Wed Sep 7 17:27:18 2011 NARUSE, Yui <naruse@ruby-lang.org>
* lib/yaml.rb: explicitly specify ::Object to avoid the collision with

View file

@ -346,7 +346,7 @@ module REXML
md = @source.match( COMMENT_PATTERN, true )
case md[1]
when /--/, /-$/
when /--/, /-\z/
raise REXML::ParseException.new("Malformed comment", @source)
end

View file

@ -0,0 +1,25 @@
require "test/unit/testcase"
require 'rexml/document'
module REXMLTest
class CommentTester < Test::Unit::TestCase
# Bug #5278
def test_hyphen_end_line_in_doctype
xml = <<-XML
<?xml version="1.0"?>
<!DOCTYPE root [
<!-- comment end with hyphen -
here -->
]>
<root/>
XML
document = REXML::Document.new(xml)
comments = document.doctype.children.find_all do |child|
child.is_a?(REXML::Comment)
end
assert_equal([" comment end with hyphen -\n here "],
comments.collect(&:to_s))
end
end
end