diff mbox

[2/2] vnc: auto assian an id when calling change vnc qmp interface

Message ID 1423128969-5012-3-git-send-email-arei.gonglei@huawei.com
State New
Headers show

Commit Message

Gonglei (Arei) Feb. 5, 2015, 9:36 a.m. UTC
From: Gonglei <arei.gonglei@huawei.com>

Only in this way, change vnc qmp interface can take effect,
because qemu_opts_find(&qemu_vnc_opts, id) will return NULL
in vnc_display_open(), It can't connect successfully vnc
server forever.

Signed-off-by: Gonglei <arei.gonglei@huawei.com>
---
 qmp.c | 5 +++++
 1 file changed, 5 insertions(+)

Comments

Gonglei (Arei) Feb. 5, 2015, 9:40 a.m. UTC | #1
On 2015/2/5 17:36, Gonglei (Arei) wrote:

> From: Gonglei <arei.gonglei@huawei.com>
> 
> Only in this way, change vnc qmp interface can take effect,
> because qemu_opts_find(&qemu_vnc_opts, id) will return NULL
> in vnc_display_open(), It can't connect successfully vnc
> server forever.
> 
> Signed-off-by: Gonglei <arei.gonglei@huawei.com>
> ---
>  qmp.c | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/qmp.c b/qmp.c
> index 963305c..028193b 100644
> --- a/qmp.c
> +++ b/qmp.c
> @@ -381,6 +381,11 @@ static void qmp_change_vnc_listen(const char *target, Error **errp)
>          qemu_opts_del(opts);
>      }
>      opts = vnc_parse_func(target);
> +    if (opts) {

Oops... I forget to rebase. It should be 'if (!opts)'. :(

Regards,
-Gonglei

> +        return;
> +    }
> +
> +    vnc_auto_assign_id(olist, opts);
>      vnc_display_open("default", errp);
>  }
>
diff mbox

Patch

diff --git a/qmp.c b/qmp.c
index 963305c..028193b 100644
--- a/qmp.c
+++ b/qmp.c
@@ -381,6 +381,11 @@  static void qmp_change_vnc_listen(const char *target, Error **errp)
         qemu_opts_del(opts);
     }
     opts = vnc_parse_func(target);
+    if (opts) {
+        return;
+    }
+
+    vnc_auto_assign_id(olist, opts);
     vnc_display_open("default", errp);
 }