]> git.openstreetmap.org Git - nominatim.git/blobdiff - settings/flex-base.lua
Merge remote-tracking branch 'upstream/master'
[nominatim.git] / settings / flex-base.lua
index dc2c12eef1f2d4bb4f2c67b075376ebcd2f4323c..7860737f7e6ef267a9bc8e27094ac1267f64e057 100644 (file)
@@ -5,6 +5,7 @@ local module = {}
 
 local PRE_DELETE = nil
 local PRE_EXTRAS = nil
+local POST_DELETE = nil
 local MAIN_KEYS = nil
 local NAMES = nil
 local ADDRESS_TAGS = nil
@@ -226,7 +227,7 @@ function Place:write_row(k, v, save_extra_mains)
     if self.geometry == nil then
         self.geometry = self.geom_func(self.object)
     end
-    if self.geometry:is_null() then
+    if self.geometry == nil or self.geometry:is_null() then
         return 0
     end
 
@@ -249,9 +250,9 @@ function Place:write_row(k, v, save_extra_mains)
     }
 
     if save_extra_mains then
-        for k, v in pairs(self.object.tags) do
-            if save_extra_mains(k, v) then
-                self.extratags[k] = nil
+        for tk, tv in pairs(self.object.tags) do
+            if save_extra_mains(tk, tv) then
+                self.extratags[tk] = nil
             end
         end
     end
@@ -407,6 +408,9 @@ function module.process_way(object)
 
         if geom:is_null() then
             geom = o:as_linestring()
+            if not geom:is_null() and geom:length() > 30 then
+              return nil
+            end
         end
 
         return geom
@@ -539,7 +543,7 @@ function module.set_unused_handling(data)
     end
 end
 
-function set_relation_types(data)
+function module.set_relation_types(data)
     module.RELATION_TYPES = {}
     for k, v in data do
         if v == 'multipolygon' then