瀏覽代碼

tests: use dup-ed stdin in wait_on_fail

transport.close() (necessary to detach reader from the loop) will close
the FD. In case of stdin, it will prevent another call to this waiting
function. Use dup(2) to register cloned FD, which is safe to close
without side effects.
Marek Marczykowski-Górecki 3 年之前
父節點
當前提交
79fb0cade1
共有 1 個文件被更改,包括 1 次插入1 次删除
  1. 1 1
      qubes/tests/__init__.py

+ 1 - 1
qubes/tests/__init__.py

@@ -249,7 +249,7 @@ def wait_on_fail(func):
             transport, protocol = self.loop.run_until_complete(
                 self.loop.connect_read_pipe(
                     lambda: asyncio.StreamReaderProtocol(reader),
-                    sys.stdin))
+                    os.fdopen(os.dup(sys.stdin.fileno()))))
             self.loop.run_until_complete(reader.readline())
             transport.close()
             raise