diff --git a/Tools/scripts/untabify.py b/Tools/scripts/untabify.py index ef63c41b57b..4b67c151543 100755 --- a/Tools/scripts/untabify.py +++ b/Tools/scripts/untabify.py @@ -5,7 +5,7 @@ import os import sys import getopt - +import tokenize def main(): tabsize = 8 @@ -27,8 +27,9 @@ def main(): def process(filename, tabsize, verbose=True): try: - with open(filename) as f: + with tokenize.open(filename) as f: text = f.read() + encoding = f.encoding except IOError as msg: print("%r: I/O error: %s" % (filename, msg)) return @@ -44,7 +45,7 @@ def process(filename, tabsize, verbose=True): os.rename(filename, backup) except os.error: pass - with open(filename, "w") as f: + with open(filename, "w", encoding=encoding) as f: f.write(newtext) if verbose: print(filename)