diff options
author | usa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-02-06 13:03:59 +0000 |
---|---|---|
committer | usa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-02-06 13:03:59 +0000 |
commit | e52527a4f92e5e575ebcc7d9fe83247cae6e0ffe (patch) | |
tree | a88a987cc6addb0728826732024d139417b1f6fb | |
parent | e5938a1157799ffcb7fe34a1a1c2093afa1cd196 (diff) |
merge miss of r39093.
I don't understand why svn merge didn't merge any files and reported no errors.
terrible...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@39113 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | lib/rexml/parsers/baseparser.rb | 2 | ||||
-rw-r--r-- | test/rexml/test_comment.rb | 25 | ||||
-rw-r--r-- | version.h | 2 |
3 files changed, 27 insertions, 2 deletions
diff --git a/lib/rexml/parsers/baseparser.rb b/lib/rexml/parsers/baseparser.rb index 95afd7add5..2df26b82f9 100644 --- a/lib/rexml/parsers/baseparser.rb +++ b/lib/rexml/parsers/baseparser.rb @@ -342,7 +342,7 @@ module REXML md = @source.match( COMMENT_PATTERN, true ) case md[1] - when /--/, /-$/ + when /--/, /-\z/ raise REXML::ParseException.new("Malformed comment", @source) end diff --git a/test/rexml/test_comment.rb b/test/rexml/test_comment.rb new file mode 100644 index 0000000000..ebe3eead8d --- /dev/null +++ b/test/rexml/test_comment.rb @@ -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 @@ -1,5 +1,5 @@ #define RUBY_VERSION "1.9.3" -#define RUBY_PATCHLEVEL 384 +#define RUBY_PATCHLEVEL 385 #define RUBY_RELEASE_DATE "2013-02-06" #define RUBY_RELEASE_YEAR 2013 |