vnc: fix incorrect checking condition when updating client
vs->disconnecting is set to TRUE and vs->ioc is closed, but
vs->ioc isn't set to NULL, so that the vnc_disconnect_finish()
isn't invoked when you update client in vnc_update_client()
after vnc_disconnect_start invoked. Let's using change the checking
condition to avoid resource leak.
Signed-off-by: Haibin Wang <wanghaibin.wang@huawei.com>
Signed-off-by: Gonglei <arei.gonglei@huawei.com>
Reviewed-by: Daniel P. Berrange <berrange@redhat.com>
Message-id: 1467949056-81208-1-git-send-email-arei.gonglei@huawei.com
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
(cherry picked from commit 5a693efda8
)
Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
This commit is contained in:
parent
98b81297bf
commit
1c57ced0c4
2
ui/vnc.c
2
ui/vnc.c
|
@ -1041,7 +1041,7 @@ static int vnc_update_client(VncState *vs, int has_dirty, bool sync)
|
||||||
}
|
}
|
||||||
|
|
||||||
vs->has_dirty += has_dirty;
|
vs->has_dirty += has_dirty;
|
||||||
if (vs->need_update && vs->ioc != NULL) {
|
if (vs->need_update && !vs->disconnecting) {
|
||||||
VncDisplay *vd = vs->vd;
|
VncDisplay *vd = vs->vd;
|
||||||
VncJob *job;
|
VncJob *job;
|
||||||
int y;
|
int y;
|
||||||
|
|
Loading…
Reference in New Issue