aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Snow <jsnow@redhat.com>2020-10-06 19:58:14 -0400
committerJohn Snow <jsnow@redhat.com>2020-10-20 09:37:57 -0400
commitd2b08b79b0d0f1f794b9ed8f3b8fbcbfdfb9e142 (patch)
treec5e8b3f86bc7b9bd018412363147708685ffd049
parentaf0db8825400ea8c79fd77ed4ba6fb6699bd0855 (diff)
python/qemu/qmp.py: Preserve error context on re-raise
Use the "from ..." phrasing when re-raising errors to preserve their initial context, to help aid debugging when things go wrong. This also silences a pylint 2.6.0+ error. Signed-off-by: John Snow <jsnow@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Reviewed-by: Kevin Wolf <kwolf@redhat.com> Message-id: 20201006235817.3280413-18-jsnow@redhat.com Signed-off-by: John Snow <jsnow@redhat.com>
-rw-r--r--python/qemu/qmp.py9
1 files changed, 5 insertions, 4 deletions
diff --git a/python/qemu/qmp.py b/python/qemu/qmp.py
index 9223307ed8..d911999da1 100644
--- a/python/qemu/qmp.py
+++ b/python/qemu/qmp.py
@@ -181,10 +181,11 @@ class QEMUMonitorProtocol:
self.__sock.settimeout(wait)
try:
ret = self.__json_read(only_event=True)
- except socket.timeout:
- raise QMPTimeoutError("Timeout waiting for event")
- except:
- raise QMPConnectError("Error while reading from socket")
+ except socket.timeout as err:
+ raise QMPTimeoutError("Timeout waiting for event") from err
+ except Exception as err:
+ msg = "Error while reading from socket"
+ raise QMPConnectError(msg) from err
if ret is None:
raise QMPConnectError("Error while reading from socket")
self.__sock.settimeout(None)