diff tests/hghave.py @ 38179:6fb76897e066 stable

hghave: avoid a deadlock reading the child process's output The output of `pylint` is voluminous enough that it fills the buffer on Windows, and waited for the parent to read it out. But the parent was waiting on the child to exit. I'm not sure what the intent of setting `ret = -1` in the exception handler just above this was...
author Matt Harbison <matt_harbison@yahoo.com>
date Thu, 31 May 2018 22:11:47 -0400
parents c2c8962a9465
children ead71b15efd5
line wrap: on
line diff
--- a/tests/hghave.py	Thu May 31 09:19:09 2018 -0400
+++ b/tests/hghave.py	Thu May 31 22:11:47 2018 -0400
@@ -98,8 +98,8 @@
         if e.errno != errno.ENOENT:
             raise
         ret = -1
-    ret = p.wait()
-    s = p.stdout.read()
+    s = p.communicate()[0]
+    ret = p.returncode
     return (ignorestatus or not ret) and r.search(s)
 
 @check("baz", "GNU Arch baz client")