summaryrefslogtreecommitdiff
path: root/mesonbuild
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2021-04-29 19:18:41 +0300
committerJussi Pakkanen <jpakkane@gmail.com>2021-04-30 16:57:17 +0300
commitb470c14b869a55271d2d431af22bf5c6695441f0 (patch)
tree677b41b3a9c135d36ff2154b43066cc642d6e218 /mesonbuild
parentcdc6c866ca087ba738f0a5d01cc0fc6ddc066935 (diff)
downloadmeson-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.py7
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