def summary
return @summary if @summary
hg 'rhsummary' do |io|
+ output = io.read
+ if output.respond_to?(:force_encoding)
+ output.force_encoding('UTF-8')
+ end
begin
- @summary = ActiveSupport::XmlMini.parse(io.read)['rhsummary']
+ @summary = ActiveSupport::XmlMini.parse(output)['rhsummary']
rescue
end
end
p1 = scm_iconv(@path_encoding, 'UTF-8', path)
manifest = hg('rhmanifest', '-r', CGI.escape(hgrev(identifier)),
CGI.escape(without_leading_slash(p1.to_s))) do |io|
+ output = io.read
+ if output.respond_to?(:force_encoding)
+ output.force_encoding('UTF-8')
+ end
begin
- ActiveSupport::XmlMini.parse(io.read)['rhmanifest']['repository']['manifest']
+ ActiveSupport::XmlMini.parse(output)['rhmanifest']['repository']['manifest']
rescue
end
end
hg_args << '--limit' << options[:limit] if options[:limit]
hg_args << hgtarget(path) unless path.blank?
log = hg(*hg_args) do |io|
+ output = io.read
+ if output.respond_to?(:force_encoding)
+ output.force_encoding('UTF-8')
+ end
begin
# Mercurial < 1.5 does not support footer template for '</log>'
- ActiveSupport::XmlMini.parse("#{io.read}</log>")['log']
+ ActiveSupport::XmlMini.parse("#{output}</log>")['log']
rescue
end
end
info = nil\r
shellout(cmd) do |io|\r
output = io.read\r
+ if output.respond_to?(:force_encoding)\r
+ output.force_encoding('UTF-8')\r
+ end\r
begin\r
doc = ActiveSupport::XmlMini.parse(output)\r
#root_url = doc.elements["info/entry/repository/root"].text \r
cmd << credentials_string\r
shellout(cmd) do |io|\r
output = io.read\r
+ if output.respond_to?(:force_encoding)\r
+ output.force_encoding('UTF-8')\r
+ end\r
begin\r
doc = ActiveSupport::XmlMini.parse(output)\r
each_xml_element(doc['lists']['list'], 'entry') do |entry|\r
properties = {}\r
shellout(cmd) do |io|\r
output = io.read\r
+ if output.respond_to?(:force_encoding)\r
+ output.force_encoding('UTF-8')\r
+ end\r
begin\r
doc = ActiveSupport::XmlMini.parse(output)\r
each_xml_element(doc['properties']['target'], 'property') do |property|\r
cmd << ' ' + target(path)\r
shellout(cmd) do |io|\r
output = io.read\r
+ if output.respond_to?(:force_encoding)\r
+ output.force_encoding('UTF-8')\r
+ end\r
begin\r
doc = ActiveSupport::XmlMini.parse(output)\r
each_xml_element(doc['log'], 'logentry') do |logentry|\r