diff options
author | Guido Günther <agx@sigxcpu.org> | 2011-04-17 18:17:02 +0200 |
---|---|---|
committer | Guido Günther <agx@sigxcpu.org> | 2011-04-25 23:22:56 +0200 |
commit | 02f90e8f7dc5707e91a74dabefd661e529a89499 (patch) | |
tree | fcaa890fc46abd2d40c37ddbbad6f37320f3d4f6 | |
parent | a6a74fd8d9e55d6827cfd8534cc1c6ad7fc2ee83 (diff) |
Handle providerdb parsing errors
-rw-r--r-- | src/ppm/providerdb.py | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/ppm/providerdb.py b/src/ppm/providerdb.py index a1bc394..2ea3272 100644 --- a/src/ppm/providerdb.py +++ b/src/ppm/providerdb.py @@ -104,9 +104,12 @@ class ProviderDB(object): searcher = etree.ETXPath(path) providers = [] - for r in searcher(self.tree): - provider_elem = r.getparent().getparent() - providers.append(self._fill_provider_info(provider_elem)) + try: + for r in searcher(self.tree): + provider_elem = r.getparent().getparent() + providers.append(self._fill_provider_info(provider_elem)) + except etree.XMLSyntaxError: + return None return providers def get_provider(self, country_code, name): |