diff options
author | Yves Fischer <yvesf-git@xapek.org> | 2017-01-05 18:33:13 +0100 |
---|---|---|
committer | Yves Fischer <yvesf-git@xapek.org> | 2017-01-05 18:33:13 +0100 |
commit | 7bd7f060dfceac021b225d9f3e03032e5f2b109b (patch) | |
tree | cf605b0a97a68165c408391b8967cb674b6d0878 /mp_tool | |
parent | 893389f3782379f25bc8220845fe83a78e3125c7 (diff) | |
download | mp-tool-master.tar.gz mp-tool-master.zip |
Diffstat (limited to 'mp_tool')
-rw-r--r-- | mp_tool/web.py | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/mp_tool/web.py b/mp_tool/web.py index 39e3010..6891aa5 100644 --- a/mp_tool/web.py +++ b/mp_tool/web.py @@ -129,6 +129,8 @@ def eval(url: str, password: str, code: str): ws = _connect_and_auth(url, password) ws.send(Constants.ENTER_REPL_MODE) stdout.write(read_until_eval_or_timeout(ws)) + + ws.settimeout(5) ws.send(code + "\r\n") result = read_until_eval_or_timeout(ws) @@ -139,8 +141,11 @@ def eval(url: str, password: str, code: str): def read_until_eval_or_timeout(ws: websocket.WebSocket): buf = "" - while not buf.endswith("\r\n>>> "): - buf += ws.recv() + try: + while not buf.endswith("\r\n>>> "): + buf += ws.recv() + except websocket.WebSocketTimeoutException: + pass return buf |