From 454b927d1e33a1fe9dca535db2c97300fdae62cc Mon Sep 17 00:00:00 2001 Message-Id: <454b927d1e33a1fe9dca535db2c97300fdae62cc.1646730306.git.mprivozn@redhat.com> From: Jim Fehlig Date: Thu, 17 Feb 2022 11:48:13 -0700 Subject: [PATCH] libxl: Fix libvirtd crash on domain restore MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Commit cc2a3c2a94 missed one case in the libxl driver where virDomainDef is returned from libxlDomainSaveImageOpen and a g_steal_pointer is needed. Without it, the virDomainDef object is freed and the driver crashes later in the restore process when accessing the object. Signed-off-by: Jim Fehlig Reviewed-by: Ján Tomko Signed-off-by: Michal Privoznik --- src/libxl/libxl_domain.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libxl/libxl_domain.c b/src/libxl/libxl_domain.c index c91e531a9a..ee031267ca 100644 --- a/src/libxl/libxl_domain.c +++ b/src/libxl/libxl_domain.c @@ -811,7 +811,7 @@ libxlDomainSaveImageOpen(libxlDriverPrivate *driver, VIR_DOMAIN_DEF_PARSE_SKIP_VALIDATE))) goto error; - *ret_def = def; + *ret_def = g_steal_pointer(&def); *ret_hdr = hdr; return fd; -- 2.34.1