def self.from_xml(xml, create=false)
begin
- p = XML::Parser.new
- p.string = xml
+ p = XML::Parser.string(xml)
doc = p.parse
doc.find('//osm/way').each do |pt|
return Way.from_xml_node(pt, create)
end
- rescue LibXML::XML::Error => ex
+ rescue LibXML::XML::Error, ArgumentError => ex
raise OSM::APIBadXMLError.new("way", xml, ex.message)
end
end