diff options
author | Zac Medico <zmedico@gentoo.org> | 2006-04-21 19:07:30 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2006-04-21 19:07:30 +0000 |
commit | 5f713b628b4445b8c0e18e08e762b1ef301fdab1 (patch) | |
tree | 658bd649279d3437e02340ad1fe69a0aaef4971e /bin/emerge | |
parent | 5737e903a88b3909b19751bcd5596158ca740c05 (diff) | |
download | portage-5f713b628b4445b8c0e18e08e762b1ef301fdab1.tar.gz portage-5f713b628b4445b8c0e18e08e762b1ef301fdab1.tar.bz2 portage-5f713b628b4445b8c0e18e08e762b1ef301fdab1.zip |
Fix `emerge -s` download size calculation for bug #130750.
svn path=/main/trunk/; revision=3184
Diffstat (limited to 'bin/emerge')
-rwxr-xr-x | bin/emerge | 34 |
1 files changed, 14 insertions, 20 deletions
diff --git a/bin/emerge b/bin/emerge index 49bc19bbd..09ba5bc0f 100755 --- a/bin/emerge +++ b/bin/emerge @@ -784,26 +784,20 @@ class search: mysum = [0,0] mycat = match.split("/")[0] mypkg = match.split("/")[1] - - mydigest = portage.db["/"]["porttree"].dbapi.finddigest(mycat+"/"+mypkg + "-" + myversion) - - try: - myfile = open(mydigest,"r") - for line in myfile.readlines(): - mysum[0] += int(line.split(" ")[3]) - myfile.close() - mystr = str(mysum[0]/1024) - mycount=len(mystr) - while (mycount > 3): - mycount-=3 - mystr=mystr[:mycount]+","+mystr[mycount:] - mysum[0]=mystr+" kB" - except SystemExit, e: - raise # Needed else can't exit - except Exception, e: - if edebug: - print "!!! Exception:",e - mysum[0]=" [no/bad digest]" + mycpv = match + "-" + myversion + myebuild = portage.portdb.findname(mycpv) + pkgdir = os.path.dirname(myebuild) + import portage_manifest + mf = portage_manifest.Manifest(pkgdir, + portage.FetchlistDict(pkgdir, portage.settings), + portage.settings["DISTDIR"]) + mysum[0] = mf.getDistfilesSize(mf.fetchlist_dict[mycpv]) + mystr = str(mysum[0]/1024) + mycount=len(mystr) + while (mycount > 3): + mycount-=3 + mystr=mystr[:mycount]+","+mystr[mycount:] + mysum[0]=mystr+" kB" if "--quiet" not in myopts: print " ", darkgreen("Latest version available:"),myversion |