From: Martin Kletzander Date: Thu, 4 Mar 2021 09:00:06 +0000 (+0100) Subject: glib: Use safe glib event workaround in other event loops X-Git-Tag: v7.2.0-rc1~237 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2a490ce5a03ef6607fe55515ba55d6cfd2016bef;p=thirdparty%2Flibvirt.git glib: Use safe glib event workaround in other event loops Similarly to the crash workaround: commit 0db4743645b7a0611a3c0687f834205c9956f7fc Author: Daniel P. Berrangé Date: Tue Jul 28 16:52:47 2020 +0100 util: avoid crash due to race in glib event loop code we need to do this in the other event loop as crash in that one was also reported: https://bugzilla.redhat.com/show_bug.cgi?id=1931331 Signed-off-by: Martin Kletzander Reviewed-by: Daniel P. Berrangé --- diff --git a/src/qemu/qemu_agent.c b/src/qemu/qemu_agent.c index 9a74b802b8..8b880d0d15 100644 --- a/src/qemu/qemu_agent.c +++ b/src/qemu/qemu_agent.c @@ -533,7 +533,7 @@ qemuAgentUnregister(qemuAgentPtr agent) { if (agent->watch) { g_source_destroy(agent->watch); - g_source_unref(agent->watch); + g_vir_source_unref_safe(agent->watch); agent->watch = NULL; } } diff --git a/src/qemu/qemu_monitor.c b/src/qemu/qemu_monitor.c index 73f337a6be..b4f2641504 100644 --- a/src/qemu/qemu_monitor.c +++ b/src/qemu/qemu_monitor.c @@ -862,7 +862,7 @@ qemuMonitorUnregister(qemuMonitorPtr mon) { if (mon->watch) { g_source_destroy(mon->watch); - g_source_unref(mon->watch); + g_vir_source_unref_safe(mon->watch); mon->watch = NULL; } }