diff options
author | Jussi Pakkanen <jpakkane@gmail.com> | 2021-04-29 19:18:41 +0300 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2021-04-30 16:57:17 +0300 |
commit | b470c14b869a55271d2d431af22bf5c6695441f0 (patch) | |
tree | 677b41b3a9c135d36ff2154b43066cc642d6e218 /mesonbuild | |
parent | cdc6c866ca087ba738f0a5d01cc0fc6ddc066935 (diff) | |
download | meson-clangformatcheck.tar.gz |
Do not accidentally format files when only checking if they are formatted.clangformatcheck
Diffstat (limited to 'mesonbuild')
-rw-r--r-- | mesonbuild/scripts/clangformat.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/mesonbuild/scripts/clangformat.py b/mesonbuild/scripts/clangformat.py index ceb36ac23..99e1ea591 100644 --- a/mesonbuild/scripts/clangformat.py +++ b/mesonbuild/scripts/clangformat.py @@ -36,12 +36,17 @@ def parse_pattern_file(fname: Path) -> T.List[str]: return patterns def run_clang_format(exelist: T.List[str], fname: Path, check: bool) -> subprocess.CompletedProcess: + if check: + original = fname.read_bytes() before = fname.stat().st_mtime - ret = subprocess.run(exelist + ['-style=file', '-i', str(fname)]) + args = ['-style=file', '-i', str(fname)] + ret = subprocess.run(exelist + args) after = fname.stat().st_mtime if before != after: print('File reformatted: ', fname) if check: + # Restore the original if only checking. + fname.write_bytes(original) ret.returncode = 1 return ret |