Fix find_packages and find_installed_packages to print a warning instead of a traceba...
authorfuzzyray <fuzzyray@gentoo.org>
Fri, 22 Aug 2008 21:38:27 +0000 (21:38 -0000)
committerfuzzyray <fuzzyray@gentoo.org>
Fri, 22 Aug 2008 21:38:27 +0000 (21:38 -0000)
svn path=/; revision=507

trunk/ChangeLog
trunk/src/gentoolkit/helpers.py

index 17124b6a055947d41cfc25f6245bc66df9afb3f1..8f1956c10d5fef895131d0cb5aa2a8537c76a2b5 100644 (file)
@@ -1,3 +1,8 @@
+2008-08-22: Paul Varner <fuzzyray@gentoo.org>
+       * gentoolkit: Fix find_packages and find_installed_packages to print
+       a warning instead of a traceback when an InvalidAtom exception occurs.
+       (Bug #234358)
+
 2008-08-22: Paul Varner <fuzzyray@gentoo.org>
        * equery: Fix equery belongs to strip multiple slashes from path
        names. (Bug #234584)
index 6dba7db7c484acb14a88917f4fa0492ef4556fe8..bf2b1b1f1498b9e2f5aab9e52ed3393f9ffbbed3 100644 (file)
@@ -10,6 +10,7 @@
 import portage
 from gentoolkit import *
 from package import *
+from pprinter import print_warn
 try:
        from portage.util import unique_array
 except ImportError:
@@ -37,6 +38,9 @@ def find_packages(search_key, masked=False):
                                        t += portage.db["/"]["vartree"].dbapi.match(cp)
                else:
                        raise ValueError(e)
+       except portage_exception.InvalidAtom, e:
+               print_warn("Invalid Atom: '%s'" % str(e))
+               return []
        # Make the list of packages unique
        t = unique_array(t)
        t.sort()
@@ -54,6 +58,9 @@ def find_installed_packages(search_key, masked=False):
                                t += portage.db["/"]["vartree"].dbapi.match(cp)
                else:
                        raise ValueError(e)
+       except portage_exception.InvalidAtom, e:
+               print_warn("Invalid Atom: '%s'" % str(e))
+               return []
        return [Package(x) for x in t]
 
 def find_best_match(search_key):