Mercurial > hgrepos > Python > apps > py-cutils
diff shasum.py @ 19:2f9e702e3f7a
Convert backslashes in filenames to forward slashes when creating digests
| author | Franz Glasner <fzglas.hg@dom66.de> |
|---|---|
| date | Sat, 05 Dec 2020 00:13:27 +0100 |
| parents | 285848db0b52 |
| children | 8f0241ed4a00 |
line wrap: on
line diff
--- a/shasum.py Fri Dec 04 23:22:30 2020 +0100 +++ b/shasum.py Sat Dec 05 00:13:27 2020 +0100 @@ -256,7 +256,9 @@ if filename is None: print(digest, file=dest) else: - print("{} ({}) = {}".format(digestname, filename, digest), + print("{} ({}) = {}".format(digestname, + normalize_filename(filename), + digest), file=dest) @@ -264,9 +266,10 @@ """Coreutils format (:command:`shasum` et al.) """ - print("{} {}{}".format(digest, - '*' if binary else ' ', - '-' if filename is None else filename), + print("{} {}{}".format( + digest, + '*' if binary else ' ', + '-' if filename is None else normalize_filename(filename)), file=dest) @@ -289,5 +292,13 @@ return h.hexdigest() +def normalize_filename(filename, strip_leading_dot_slash=False): + filename = filename.replace("\\", "/") + if strip_leading_dot_slash: + while filename.startswith("./"): + filename = filename[2:] + return filename + + if __name__ == "__main__": sys.exit(main())
