# HG changeset patch # User Franz Glasner # Date 1735836410 -3600 # Node ID 6a50d02fe0ca43e6c3ebca4ff8848caab640ddf5 # Parent dfe7bb0579e2691b1bdc0533bbd6585d56f4c92e Change the filename output: make it more consistent diff -r dfe7bb0579e2 -r 6a50d02fe0ca cutils/treesum.py --- a/cutils/treesum.py Thu Jan 02 17:09:50 2025 +0100 +++ b/cutils/treesum.py Thu Jan 02 17:46:50 2025 +0100 @@ -164,10 +164,7 @@ linkdgst.update(linktgt) dir_dgst.update(b"1:S,%d:%s," % (len(dn.fsname), dn.fsname)) dir_dgst.update(linkdgst.digest()) - if top: - opath = "/".join(top) + "/" + dn.name - else: - opath = dn.name + opath = "/".join(top) + "/" + dn.name if top else dn.name outfp.write( format_bsd_line( algorithm[1], @@ -185,15 +182,13 @@ dgst = digest.compute_digest_file( algorithm[0], fn.path, use_mmap=use_mmap) dir_dgst.update(dgst) - if top: - opath = "/".join(top) + "/" + fn.name - else: - opath = fn.name + opath = "/".join(top) + "/" + fn.name if top else fn.name outfp.write(format_bsd_line( algorithm[1], dgst, opath, use_base64)) outfp.flush() + opath = "/".join(top) + "/" if top else "" outfp.write(format_bsd_line( - algorithm[1], dir_dgst.digest(), "/".join(top) + "/", use_base64)) + algorithm[1], dir_dgst.digest(), opath, use_base64)) outfp.flush() dir_digests[top] = dir_dgst.digest() @@ -211,8 +206,9 @@ digest = base64.b64encode(digest) else: digest = binascii.hexlify(digest) - return b"%s (%s) = %s%s" \ - % (digestname, util.normalize_filename(filename, True), digest, ls) + if filename != b"/./@": + filename = util.normalize_filename(filename, True) + return b"%s (%s) = %s%s" % (digestname, filename, digest, ls) if __name__ == "__main__":