summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pym/portage.py8
1 files changed, 6 insertions, 2 deletions
diff --git a/pym/portage.py b/pym/portage.py
index 81de2e182..6adaa56df 100644
--- a/pym/portage.py
+++ b/pym/portage.py
@@ -5710,8 +5710,10 @@ class binarytree(packagetree):
mypath = os.path.join("All", myfile)
dest_path = os.path.join(self.pkgdir, mypath)
if os.path.exists(dest_path):
- other_cat = xpak.tbz2(dest_path).getfile("CATEGORY").strip()
+ # For invalid packages, other_cat could be None.
+ other_cat = xpak.tbz2(dest_path).getfile("CATEGORY")
if other_cat:
+ other_cat = other_cat.strip()
self._move_from_all(other_cat + "/" + mypkg)
"""The file may or may not exist. Move it if necessary and update
internal state for future calls to getname()."""
@@ -5778,7 +5780,8 @@ class binarytree(packagetree):
if os.path.islink(full_path):
continue
mytbz2 = xpak.tbz2(full_path)
- mycat = mytbz2.getfile("CATEGORY").strip()
+ # For invalid packages, mycat could be None.
+ mycat = mytbz2.getfile("CATEGORY")
mypkg = myfile[:-5]
if not mycat:
#old-style or corrupt package
@@ -5788,6 +5791,7 @@ class binarytree(packagetree):
"recoverable and should be deleted.\n",
noiselevel=-1)
self.invalids.append(mypkg)
+ mycat = mycat.strip()
if mycat != mydir and mydir != "All":
continue
if mypkg != mytbz2.getfile("PF").strip():