diff options
Diffstat (limited to 'mesonbuild')
-rw-r--r-- | mesonbuild/scripts/meson_exe.py | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/mesonbuild/scripts/meson_exe.py b/mesonbuild/scripts/meson_exe.py index 3fe327f..c1d0d64 100644 --- a/mesonbuild/scripts/meson_exe.py +++ b/mesonbuild/scripts/meson_exe.py @@ -84,8 +84,15 @@ def run_exe(exe): raise FileNotFoundError('Missing DLLs on calling {!r}'.format(exe.name)) if exe.capture and p.returncode == 0: - with open(exe.capture, 'wb') as output: - output.write(stdout) + skip_write = False + try: + with open(exe.capture, 'rb') as cur: + skip_write = cur.read() == stdout + except IOError: + pass + if not skip_write: + with open(exe.capture, 'wb') as output: + output.write(stdout) else: sys.stdout.buffer.write(stdout) if stderr: |