提交 f40b8bfe 编写于 作者: J Joerg Jaspert

Merge commit 'lamby/master' into merge

* commit 'lamby/master':
  Revert "Use gzip.open(.., 'rb')" as this version of python-apt is olde
  Find/replace fail.
Signed-off-by: NJoerg Jaspert <joerg@debian.org>
......@@ -140,7 +140,7 @@ class Keyring(object):
keys[key]["uid"] = uid
if keyid != None: continue
keyid = get_or_set_uid_id(uid).uid
keyid = get_or_set_uid(uid).uid
byuid[keyid] = (uid, name)
byname[uid] = (keyid, name)
......@@ -163,7 +163,7 @@ class Keyring(object):
keys[x]["uid"] = uid
if any_invalid:
uid = format % "invalid-uid"
keyid = get_or_set_uid_id(uid).uid
keyid = get_or_set_uid(uid).uid
byuid[keyid] = (uid, "ungeneratable user id")
byname[uid] = (keyid, "ungeneratable user id")
return (byname, byuid)
......
......@@ -43,7 +43,6 @@ import commands
import os
import re
import sys
import gzip
import apt_pkg
import apt_inst
......@@ -116,7 +115,11 @@ def reverse_depends_check(removals, suites, arches=None):
for component in components:
filename = "%s/dists/%s/%s/binary-%s/Packages.gz" % (cnf["Dir::Root"], suites[0], component, architecture)
# apt_pkg.ParseTagFile needs a real file handle and can't handle a GzipFile instance...
packages = gzip.open(filename, 'rb')
(fd, temp_filename) = utils.temp_filename()
(result, output) = commands.getstatusoutput("gunzip -c %s > %s" % (filename, temp_filename))
if (result != 0):
utils.fubar("Gunzip invocation failed!\n%s\n" % (output), result)
packages = utils.open_file(temp_filename)
Packages = apt_pkg.ParseTagFile(packages)
while Packages.Step():
package = Packages.Section.Find("Package")
......@@ -146,6 +149,7 @@ def reverse_depends_check(removals, suites, arches=None):
virtual_packages[virtual_pkg] += 1
p2c[package] = component
packages.close()
os.unlink(temp_filename)
# If a virtual package is only provided by the to-be-removed
# packages, treat the virtual package as to-be-removed too.
......@@ -196,7 +200,12 @@ def reverse_depends_check(removals, suites, arches=None):
for component in components:
filename = "%s/dists/%s/%s/source/Sources.gz" % (cnf["Dir::Root"], suites[0], component)
# apt_pkg.ParseTagFile needs a real file handle and can't handle a GzipFile instance...
sources = gzip.open(filename, 'rb')
(fd, temp_filename) = utils.temp_filename()
result, output = commands.getstatusoutput("gunzip -c %s > %s" % (filename, temp_filename))
if result != 0:
sys.stderr.write("Gunzip invocation failed!\n%s\n" % (output))
sys.exit(result)
sources = utils.open_file(temp_filename, "r")
Sources = apt_pkg.ParseTagFile(sources)
while Sources.Step():
source = Sources.Section.Find("Package")
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册