aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnastasia Belova <abelova@astralinux.ru>2023-06-09 12:23:06 +0300
committerMichael Tokarev <mjt@tls.msk.ru>2023-06-10 00:00:24 +0300
commitbdfca8a22f41e7ad47fd2dac71e4d1387e2c0d4e (patch)
treeefe4ee3ff87e1a73a9cc7f7a59e18fc8648fce8b
parent8fbf89a9669520ac09b3ae0013ff3eb34f8cab23 (diff)
downloadqemu-bdfca8a22f41e7ad47fd2dac71e4d1387e2c0d4e.zip
qemu-bdfca8a22f41e7ad47fd2dac71e4d1387e2c0d4e.tar.gz
qemu-bdfca8a22f41e7ad47fd2dac71e4d1387e2c0d4e.tar.bz2
vnc: move assert in vnc_worker_thread_loop
job may be NULL if queue->exit is true. Check it before dereference job. Fixes: f31f9c1080 ("vnc: add magic cookie to VncState") Signed-off-by: Anastasia Belova <abelova@astralinux.ru> Reviewed-by: Michael Tokarev <mjt@tls.msk.ru> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
-rw-r--r--ui/vnc-jobs.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/ui/vnc-jobs.c b/ui/vnc-jobs.c
index 886f9bf..fcca7ec 100644
--- a/ui/vnc-jobs.c
+++ b/ui/vnc-jobs.c
@@ -250,12 +250,13 @@ static int vnc_worker_thread_loop(VncJobQueue *queue)
/* Here job can only be NULL if queue->exit is true */
job = QTAILQ_FIRST(&queue->jobs);
vnc_unlock_queue(queue);
- assert(job->vs->magic == VNC_MAGIC);
if (queue->exit) {
return -1;
}
+ assert(job->vs->magic == VNC_MAGIC);
+
vnc_lock_output(job->vs);
if (job->vs->ioc == NULL || job->vs->abort == true) {
vnc_unlock_output(job->vs);