diff --git a/pisi/db/installdb.py b/pisi/db/installdb.py index 02b0f7d0..ec36cc9e 100644 --- a/pisi/db/installdb.py +++ b/pisi/db/installdb.py @@ -82,7 +82,15 @@ class InstallDB(lazydb.LazyDB): def __add_to_revdeps(self, package, revdeps): metadata_xml = os.path.join(self.package_path(package), ctx.const.metadata_xml) - meta_doc = piksemel.parse(metadata_xml) + try: + meta_doc = piksemel.parse(metadata_xml) + except: + # If package info is broken or not available, skip it. + ctx.ui.warning(_("Installation info for package '%s' is broken. " + "Reinstall it to fix this problem.") % package) + del self.installed_db[package] + return + pkg = meta_doc.getTag("Package") deps = pkg.getTag('RuntimeDependencies') if deps: