From 6e4e92b0bd871033af80d2ba5c0480807f7d6ca2 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Mon, 18 Mar 2019 12:22:52 +0100 Subject: Seek to end before checking the size of stderr output This fixes the error message checks in virtual environments where temporary files act weird. --- extras/autowaf.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'extras/autowaf.py') diff --git a/extras/autowaf.py b/extras/autowaf.py index 51077d1..c28cc1a 100644 --- a/extras/autowaf.py +++ b/extras/autowaf.py @@ -888,9 +888,10 @@ class TestScope: if 'stderr' in kwargs and kwargs['stderr'] == NONEMPTY: # Run with a temp file for stderr and check that it is non-empty import tempfile - with tempfile.TemporaryFile(mode='w') as stderr: + with tempfile.TemporaryFile() as stderr: kwargs['stderr'] = stderr output = self.run(test, **kwargs) + stderr.seek(0, 2) # Seek to end return (output if not output else self.run( lambda: stderr.tell() > 0, -- cgit v1.2.1