From 3505af4bc1216f67c0c62a740f936aa0b3688b6d Mon Sep 17 00:00:00 2001 From: Al Date: Sun, 31 Jul 2016 22:14:02 -0400 Subject: [PATCH] [fix] don't add phrases for non-numeric existing components --- scripts/geodata/addresses/components.py | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/scripts/geodata/addresses/components.py b/scripts/geodata/addresses/components.py index 44763e4f..2611d592 100644 --- a/scripts/geodata/addresses/components.py +++ b/scripts/geodata/addresses/components.py @@ -487,14 +487,14 @@ class AddressComponents(object): def get_component_phrase(self, cls, component, language, country=None): component = safe_decode(component) - if is_numeric(component): - phrase = cls.phrase(component, language, country=country) - if phrase != component: - return phrase - else: - return None + if not is_numeric(component): + return None + + phrase = cls.phrase(component, language, country=country) + if phrase != component: + return phrase else: - return component + return None def cldr_country_name(self, country_code, language): ''' @@ -856,6 +856,8 @@ class AddressComponents(object): phrase = self.get_component_phrase(component_class, num, language, country=country) if phrase and phrase != existing: address_components[component] = phrase + elif not phrase: + address_components.pop(component) def add_sub_building_components(self, address_components, language, country=None, num_floors=None, num_basements=None, zone=None): generated_components = set()