From 48c5a63e355c6481b1b3c473cadbefdc85233b70 Mon Sep 17 00:00:00 2001 From: Jose Date: Thu, 13 Aug 2015 19:45:13 +0200 Subject: Another minor fix for Expect.py script --- scripts/Expect.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'scripts/Expect.py') diff --git a/scripts/Expect.py b/scripts/Expect.py index 2bd23444e87..404209bd1de 100755 --- a/scripts/Expect.py +++ b/scripts/Expect.py @@ -98,6 +98,7 @@ class reader(threading.Thread): self._tracesuppress = None self.logfile = logfile self.watchDog = None + self._exited = False threading.Thread.__init__(self) def setWatchDog(self, watchDog): @@ -109,6 +110,7 @@ class reader(threading.Thread): c = self.p.stdout.read(1) if not c: self.cv.acquire() + self._exited = True self.cv.notify() self.cv.release() break @@ -259,7 +261,7 @@ class reader(threading.Thread): continue # If no match and the process has exited rasise a TIMEOUT - if isinstance(self.p, subprocess.Popen) and self.p.poll() is not None: + if self._exited and isinstance(self.p, subprocess.Popen) and self.p.poll() is not None: raise TIMEOUT ('timeout exceeded in match\npattern: "%s"\nbuffer: "%s"\n' % (escape(s), escape(buf, False))) -- cgit v1.2.3