From f6fa12e0e3fe4d6aa9157085b77ed25e73745fe5 Mon Sep 17 00:00:00 2001 From: Archive Administrator Date: Thu, 22 Jan 2009 12:23:54 +0000 Subject: [PATCH] generate_releases depending on what kind of file we have we generate the checksums in different ways. For the uncompressed sum we continue reading in all the content and hand that as a variable to apt_pkg.*sum. Turns out this does not work for the already compressed files, there we now go and just hand the opened file_handle to apt_pkg.*sum. --- dak/generate_releases.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/dak/generate_releases.py b/dak/generate_releases.py index 64d1d20c..8d0a3d87 100755 --- a/dak/generate_releases.py +++ b/dak/generate_releases.py @@ -84,6 +84,8 @@ decompressors = { 'zcat' : gzip.GzipFile, def print_md5sha_files (tree, files, hashop): path = Cnf["Dir::Root"] + tree + "/" for name in files: + hashvalue = "" + hashlen = 0 try: if name[0] == "<": j = name.index("/") @@ -91,10 +93,13 @@ def print_md5sha_files (tree, files, hashop): (cat, ext, name) = (name[1:j], name[j+1:k], name[k+1:]) file_handle = decompressors[ cat ]( "%s%s%s" % (path, name, ext) ) contents = file_handle.read() + hashvalue = hashop(contents) + hashlen = len(contents) else: try: file_handle = utils.open_file(path + name) - contents = file_handle.read() + hashvalue = hashop(file_handle) + hashlen = os.stat(path + name).st_size except: raise else: @@ -104,8 +109,7 @@ def print_md5sha_files (tree, files, hashop): except CantOpenError: print "ALERT: Couldn't open " + path + name else: - hash = hashop(contents) - out.write(" %s %8d %s\n" % (hash, len(contents), name)) + out.write(" %s %8d %s\n" % (hashvalue, hashlen, name)) def print_md5_files (tree, files): print_md5sha_files (tree, files, apt_pkg.md5sum) -- 2.39.5