--- /var/tmp/portage/portage-2.0.50-r1/work/portage-2.0.50-r1/pym/portage.py 2004-02-10 01:22:13.000000000 +0000 +++ pym/portage.py 2004-02-13 00:38:08.085413933 +0000 @@ -4608,21 +4608,17 @@ if not cps: #invalid cat/pkg-v return 0 - for o_cpv in suffix_array(self.overlays,"/"+cps[0]+"/"+cps[1]+"/"+cps2[1]+".ebuild"): - if os.path.exists(o_cpv): + for cpv in suffix_array([self.root]+self.overlays,"/"+cps[0]+"/"+cps[1]+"/"+cps2[1]+".ebuild"): + if os.path.exists(cpv): return 1 - if os.path.exists(self.root+"/"+cps[0]+"/"+cps[1]+"/"+cps2[1]+".ebuild"): - return 1 return 0 def cp_all(self): "returns a list of all keys in our tree" biglist=[] for x in categories: - for y in listdir(self.root+"/"+x,EmptyOnError=1,ignorecvs=1): - biglist.append(x+"/"+y) - for oroot in self.overlays: - for y in listdir(oroot+"/"+x,EmptyOnError=1,ignorecvs=1): + for root in [self.root]+self.overlays: + for y in listdir(root+"/"+x,EmptyOnError=1,ignorecvs=1): mykey=x+"/"+y if not mykey in biglist: biglist.append(mykey) @@ -4630,31 +4626,27 @@ def p_list(self,mycp): returnme=[] - for x in listdir(self.root+"/"+mycp,EmptyOnError=1): - if x[-7:]==".ebuild": - returnme.append(x[:-7]) - for oroot in self.overlays: - for x in listdir(oroot+"/"+mycp,EmptyOnError=1,ignorecvs=1): + ignorecvs=0 + for root in [self.root]+self.overlays: + for x in listdir(root+"/"+mycp,EmptyOnError=1,ignorecvs=ignorecvs): if x[-7:]==".ebuild": mye=x[:-7] if not mye in returnme: returnme.append(mye) + ignorecvs=1 return returnme def cp_list(self,mycp,use_cache=1): mysplit=mycp.split("/") returnme=[] - list=listdir(self.root+"/"+mycp,EmptyOnError=1) - if list: - for x in list: - if x[-7:]==".ebuild": - returnme.append(mysplit[0]+"/"+x[:-7]) - for oroot in self.overlays: - for x in listdir(oroot+"/"+mycp,EmptyOnError=1,ignorecvs=1): + ignorecvs=0 + for root in [self.root]+self.overlays: + for x in listdir(root+"/"+mycp,EmptyOnError=1,ignorecvs=ignorecvs): if x[-7:]==".ebuild": - mycp=mysplit[0]+"/"+x[:-7] - if not mycp in returnme: - returnme.append(mycp) + addcp=mysplit[0]+"/"+x[:-7] + if not addcp in returnme: + returnme.append(addcp) + ignorecvs=1 return returnme def freeze(self):