aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ui/vnc-tls.c6
-rw-r--r--ui/vnc.c18
2 files changed, 9 insertions, 15 deletions
diff --git a/ui/vnc-tls.c b/ui/vnc-tls.c
index 50275de64f..63923265fd 100644
--- a/ui/vnc-tls.c
+++ b/ui/vnc-tls.c
@@ -443,10 +443,8 @@ static int vnc_set_x509_credential(VncDisplay *vd,
{
struct stat sb;
- if (*cred) {
- g_free(*cred);
- *cred = NULL;
- }
+ g_free(*cred);
+ *cred = NULL;
*cred = g_malloc(strlen(certdir) + strlen(filename) + 2);
diff --git a/ui/vnc.c b/ui/vnc.c
index 1684206184..aac93f0e17 100644
--- a/ui/vnc.c
+++ b/ui/vnc.c
@@ -935,6 +935,9 @@ static int vnc_update_client(VncState *vs, int has_dirty, bool sync)
}
vnc_job_push(job);
+ if (sync) {
+ vnc_jobs_join(vs);
+ }
vs->force_update = 0;
return n;
}
@@ -2972,10 +2975,8 @@ static void vnc_display_close(DisplayState *ds)
if (!vs)
return;
- if (vs->display) {
- g_free(vs->display);
- vs->display = NULL;
- }
+ g_free(vs->display);
+ vs->display = NULL;
if (vs->lsock != -1) {
qemu_set_fd_handler2(vs->lsock, NULL, NULL, NULL, NULL);
close(vs->lsock);
@@ -3010,13 +3011,8 @@ int vnc_display_password(DisplayState *ds, const char *password)
return -EINVAL;
}
- if (vs->password) {
- g_free(vs->password);
- vs->password = NULL;
- }
- if (password) {
- vs->password = g_strdup(password);
- }
+ g_free(vs->password);
+ vs->password = g_strdup(password);
return 0;
}