In case qemu process dies the "monitor.cmd" returns None which gets
passed to the "__negotiate_capabilities" and leads to unhandled
exception. Let's only check the resp in case it has a value.
Signed-off-by: Lukáš Doktor <ldoktor@redhat.com>
---
python/qemu/qmp.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/python/qemu/qmp.py b/python/qemu/qmp.py
index 5c8cf6a056..a3e5de718a 100644
--- a/python/qemu/qmp.py
+++ b/python/qemu/qmp.py
@@ -73,7 +73,7 @@ class QEMUMonitorProtocol(object):
raise QMPConnectError
# Greeting seems ok, negotiate capabilities
resp = self.cmd('qmp_capabilities')
- if "return" in resp:
+ if resp and "return" in resp:
return greeting
raise QMPCapabilitiesError
--
2.21.0
On 1/20/20 8:12 AM, Lukáš Doktor wrote:
> In case qemu process dies the "monitor.cmd" returns None which gets
> passed to the "__negotiate_capabilities" and leads to unhandled
> exception. Let's only check the resp in case it has a value.
>
> Signed-off-by: Lukáš Doktor <ldoktor@redhat.com>
> ---
> python/qemu/qmp.py | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/python/qemu/qmp.py b/python/qemu/qmp.py
> index 5c8cf6a056..a3e5de718a 100644
> --- a/python/qemu/qmp.py
> +++ b/python/qemu/qmp.py
> @@ -73,7 +73,7 @@ class QEMUMonitorProtocol(object):
> raise QMPConnectError
> # Greeting seems ok, negotiate capabilities
> resp = self.cmd('qmp_capabilities')
> - if "return" in resp:
> + if resp and "return" in resp:
> return greeting
> raise QMPCapabilitiesError
>
>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
On 1/20/20 5:12 AM, Lukáš Doktor wrote:
> In case qemu process dies the "monitor.cmd" returns None which gets
> passed to the "__negotiate_capabilities" and leads to unhandled
> exception. Let's only check the resp in case it has a value.
>
> Signed-off-by: Lukáš Doktor <ldoktor@redhat.com>
> ---
> python/qemu/qmp.py | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
>
> diff --git a/python/qemu/qmp.py b/python/qemu/qmp.py
> index 5c8cf6a056..a3e5de718a 100644
> --- a/python/qemu/qmp.py
> +++ b/python/qemu/qmp.py
> @@ -73,7 +73,7 @@ class QEMUMonitorProtocol(object):
> raise QMPConnectError
> # Greeting seems ok, negotiate capabilities
> resp = self.cmd('qmp_capabilities')
> - if "return" in resp:
> + if resp and "return" in resp:
> return greeting
> raise QMPCapabilitiesError
>
On 1/20/20 8:12 AM, Lukáš Doktor wrote:
> In case qemu process dies the "monitor.cmd" returns None which gets
> passed to the "__negotiate_capabilities" and leads to unhandled
> exception. Let's only check the resp in case it has a value.
>
> Signed-off-by: Lukáš Doktor <ldoktor@redhat.com>
> ---
> python/qemu/qmp.py | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/python/qemu/qmp.py b/python/qemu/qmp.py
> index 5c8cf6a056..a3e5de718a 100644
> --- a/python/qemu/qmp.py
> +++ b/python/qemu/qmp.py
> @@ -73,7 +73,7 @@ class QEMUMonitorProtocol(object):
> raise QMPConnectError
> # Greeting seems ok, negotiate capabilities
> resp = self.cmd('qmp_capabilities')
> - if "return" in resp:
> + if resp and "return" in resp:
> return greeting
> raise QMPCapabilitiesError
>
>
Thanks, applied to my python-next tree:
https://gitlab.com/philmd/qemu/commits/python-next
© 2016 - 2026 Red Hat, Inc.