Make sure we don't inherit old tags when parsing XML for objects
authorTom Hughes <tom@compton.nu>
Mon, 13 Feb 2012 10:29:03 +0000 (10:29 +0000)
committerTom Hughes <tom@compton.nu>
Wed, 15 Feb 2012 17:48:17 +0000 (17:48 +0000)
app/models/node.rb
app/models/relation.rb
app/models/way.rb

index 96d927b..5378724 100644 (file)
@@ -106,6 +106,10 @@ class Node < ActiveRecord::Base
     # and set manually before the actual delete
     node.visible = true
 
+    # Start with no tags
+    node.tags = Hash.new
+
+    # Add in any tags from the XML
     pt.find('tag').each do |tag|
       raise OSM::APIBadXMLError.new("node", pt, "tag is missing key") if tag['k'].nil?
       raise OSM::APIBadXMLError.new("node", pt, "tag is missing value") if tag['v'].nil?
index 908651b..21ee058 100644 (file)
@@ -66,6 +66,10 @@ class Relation < ActiveRecord::Base
     # and manually set to false before the actual delete.
     relation.visible = true
 
+    # Start with no tags
+    relation.tags = Hash.new
+
+    # Add in any tags from the XML
     pt.find('tag').each do |tag|
       raise OSM::APIBadXMLError.new("relation", pt, "tag is missing key") if tag['k'].nil?
       raise OSM::APIBadXMLError.new("relation", pt, "tag is missing value") if tag['v'].nil?
index f1c46ab..adf8b92 100644 (file)
@@ -64,6 +64,10 @@ class Way < ActiveRecord::Base
     # and manually set to false before the actual delete.
     way.visible = true
 
+    # Start with no tags
+    way.tags = Hash.new
+
+    # Add in any tags from the XML
     pt.find('tag').each do |tag|
       raise OSM::APIBadXMLError.new("way", pt, "tag is missing key") if tag['k'].nil?
       raise OSM::APIBadXMLError.new("way", pt, "tag is missing value") if tag['v'].nil?