summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorMohamed Akram <mohd.akram@outlook.com>2025-09-29 15:42:24 +0000
committerMarc-André Lureau <marcandre.lureau@redhat.com>2025-09-30 11:07:27 +0400
commite7ecb533ee0dbfbe30c90abb213247f4943a9a12 (patch)
treeda5211d2e08ba95c388bdb4d0799ff999e3a228f
parente01b61963faf810ceee1f15c97ec3a2210112c47 (diff)
downloadfocaccia-qemu-e7ecb533ee0dbfbe30c90abb213247f4943a9a12.tar.gz
focaccia-qemu-e7ecb533ee0dbfbe30c90abb213247f4943a9a12.zip
ui/spice: Fix abort on macOS
The check is faulty because the thread variable was assigned in the main
thread while the main loop runs in a different thread on macOS.

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/3070
Signed-off-by: Mohamed Akram <mohd.akram@outlook.com>
Acked-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-ID: <C87205B9-DD8F-4E53-AB5B-C8BF82EF1D16@outlook.com>
-rw-r--r--ui/spice-core.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/ui/spice-core.c b/ui/spice-core.c
index 5992f9daec..2645e96ef6 100644
--- a/ui/spice-core.c
+++ b/ui/spice-core.c
@@ -50,8 +50,6 @@ static int spice_migration_completed;
 static int spice_display_is_running;
 static int spice_have_target_host;
 
-static QemuThread me;
-
 struct SpiceTimer {
     QEMUTimer *timer;
 };
@@ -222,7 +220,7 @@ static void channel_event(int event, SpiceChannelEventInfo *info)
      * thread and grab the BQL if so before calling qemu
      * functions.
      */
-    bool need_lock = !qemu_thread_is_self(&me);
+    bool need_lock = !bql_locked();
     if (need_lock) {
         bql_lock();
     }
@@ -675,8 +673,6 @@ static void qemu_spice_init(void)
     spice_wan_compression_t wan_compr;
     bool seamless_migration;
 
-    qemu_thread_get_self(&me);
-
     if (!opts) {
         return;
     }