Issue #7764 has been updated by kou (Kouhei Sutou).


There is a workaround for the problem.

The problem is caused by a line that ends with "-" in comment. In your XML, there is a problem line at 163:

     | the build process. Profiles provided in the settings.xml are intended to provide local machine-

If you put " " (a space) after "machine-", the problem can be avoided. ("machine-" -> "machine- ")
----------------------------------------
Backport #7764: REXML -- Malformed comment
https://bugs.ruby-lang.org/issues/7764#change-35785

Author: lehphyro (Leandro A)
Status: Assigned
Priority: Normal
Assignee: usa (Usaku NAKAMURA)
Category: 
Target version: 


I'm getting the following trying to parse the attached xml:

C:/dev/tools/ruby193/lib/ruby/1.9.1/rexml/parsers/treeparser.rb:95:in `rescue in parse': #<REXML::ParseException: Malformed comment (REXML::ParseException)
Line: 181
Position: 7663
Last 80 unconsumed characters:
>
C:/dev/tools/ruby193/lib/ruby/1.9.1/rexml/parsers/baseparser.rb:346:in `pull_event'
C:/dev/tools/ruby193/lib/ruby/1.9.1/rexml/parsers/baseparser.rb:183:in `pull'
C:/dev/tools/ruby193/lib/ruby/1.9.1/rexml/parsers/treeparser.rb:22:in `parse'
C:/dev/tools/ruby193/lib/ruby/1.9.1/rexml/document.rb:231:in `build'
C:/dev/tools/ruby193/lib/ruby/1.9.1/rexml/document.rb:43:in `initialize'
install.rb:74:in `new'
install.rb:74:in `<main>'
...
Malformed comment
Line: 181
Position: 7663
Last 80 unconsumed characters:

Line: 181
Position: 7663
Last 80 unconsumed characters:
        from C:/dev/tools/ruby193/lib/ruby/1.9.1/rexml/parsers/treeparser.rb:20:in `parse'
        from C:/dev/tools/ruby193/lib/ruby/1.9.1/rexml/document.rb:231:in `build'
        from C:/dev/tools/ruby193/lib/ruby/1.9.1/rexml/document.rb:43:in `initialize'
        from install.rb:74:in `new'
        from install.rb:74:in `<main>'

Line 74 of install.rb is:

doc = REXML::Document.new(File.new('settings.xml'))



-- 
http://bugs.ruby-lang.org/