diff --git a/python/build/verify.py b/python/build/verify.py index 8ec190cac..9b7aa911d 100644 --- a/python/build/verify.py +++ b/python/build/verify.py @@ -1,13 +1,24 @@ import hashlib +def feed_file(h, f): + """Feed data read from an open file into the hashlib instance.""" + + while True: + data = f.read(65536) + if len(data) == 0: + # end of file + break + h.update(data) + +def feed_file_path(h, path): + """Feed data read from a file (to be opened by this function) into the hashlib instance.""" + + with open(path, 'rb') as f: + feed_file(h, f) + def file_md5(path): """Calculate the MD5 checksum of a file and return it in hexadecimal notation.""" - with open(path, 'rb') as f: - m = hashlib.md5() - while True: - data = f.read(65536) - if len(data) == 0: - # end of file - return m.hexdigest() - m.update(data) + h = hashlib.md5() + feed_file_path(h, path) + return h.hexdigest()