[PATCH] qemu: qemuDomainRenameCallback: tidy up

Roman Bogorodskiy posted 1 patch 1 day, 2 hours ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/libvirt tags/patchew/20260713175512.66263-1-bogorodskiy@gmail.com
src/qemu/qemu_driver.c | 26 ++++++++++++++------------
1 file changed, 14 insertions(+), 12 deletions(-)
[PATCH] qemu: qemuDomainRenameCallback: tidy up
Posted by Roman Bogorodskiy 1 day, 2 hours ago
A few non-functional changes improving overall readability:

 - Use g_steal_pointer() for domain name switch code.
 - Clean up the 'cleanup' handler.
 - Fix indent for virDomainEventLifecycleNewFromObj() arguments.

Signed-off-by: Roman Bogorodskiy <bogorodskiy@gmail.com>
---
 src/qemu/qemu_driver.c | 26 ++++++++++++++------------
 1 file changed, 14 insertions(+), 12 deletions(-)

diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
index 3d57de389b..6c124672d4 100644
--- a/src/qemu/qemu_driver.c
+++ b/src/qemu/qemu_driver.c
@@ -19064,9 +19064,8 @@ qemuDomainRenameCallback(virDomainObj *vm,
     }
 
     /* Switch name in domain definition. */
-    old_dom_name = vm->def->name;
-    vm->def->name = new_dom_name;
-    new_dom_name = NULL;
+    old_dom_name = g_steal_pointer(&vm->def->name);
+    vm->def->name = g_steal_pointer(&new_dom_name);
 
     if (virDomainSnapshotForEach(vm->snapshots,
                                  qemuDomainSnapshotWriteMetadataIter,
@@ -19085,22 +19084,25 @@ qemuDomainRenameCallback(virDomainObj *vm,
                                            VIR_DOMAIN_EVENT_UNDEFINED,
                                            VIR_DOMAIN_EVENT_UNDEFINED_RENAMED);
     event_new = virDomainEventLifecycleNewFromObj(vm,
-                                              VIR_DOMAIN_EVENT_DEFINED,
-                                              VIR_DOMAIN_EVENT_DEFINED_RENAMED);
+                                                  VIR_DOMAIN_EVENT_DEFINED,
+                                                  VIR_DOMAIN_EVENT_DEFINED_RENAMED);
     virObjectEventStateQueue(driver->domainEventState, event_old);
     virObjectEventStateQueue(driver->domainEventState, event_new);
     ret = 0;
 
  cleanup:
-    if (old_dom_name && ret < 0) {
-        new_dom_name = vm->def->name;
-        vm->def->name = old_dom_name;
-        old_dom_name = NULL;
-    }
+    if (ret < 0) {
+        if (old_dom_name) {
+            new_dom_name = vm->def->name;
+            vm->def->name = old_dom_name;
+            old_dom_name = NULL;
+        }
 
-    if (ret < 0)
         virErrorPreserveLast(&err);
-    qemuDomainNamePathsCleanup(cfg, ret < 0 ? new_dom_name : old_dom_name, true);
+        qemuDomainNamePathsCleanup(cfg, new_dom_name, true);
+    } else {
+        qemuDomainNamePathsCleanup(cfg, old_dom_name, true);
+    }
     virErrorRestore(&err);
     return ret;
 }
-- 
2.52.0
Re: [PATCH] qemu: qemuDomainRenameCallback: tidy up
Posted by Peter Krempa via Devel 13 hours ago
On Mon, Jul 13, 2026 at 19:55:12 +0200, Roman Bogorodskiy wrote:
> A few non-functional changes improving overall readability:
> 
>  - Use g_steal_pointer() for domain name switch code.
>  - Clean up the 'cleanup' handler.
>  - Fix indent for virDomainEventLifecycleNewFromObj() arguments.
> 
> Signed-off-by: Roman Bogorodskiy <bogorodskiy@gmail.com>
> ---
>  src/qemu/qemu_driver.c | 26 ++++++++++++++------------
>  1 file changed, 14 insertions(+), 12 deletions(-)
> 
> diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
> index 3d57de389b..6c124672d4 100644
> --- a/src/qemu/qemu_driver.c
> +++ b/src/qemu/qemu_driver.c
> @@ -19064,9 +19064,8 @@ qemuDomainRenameCallback(virDomainObj *vm,
>      }
>  
>      /* Switch name in domain definition. */
> -    old_dom_name = vm->def->name;
> -    vm->def->name = new_dom_name;
> -    new_dom_name = NULL;
> +    old_dom_name = g_steal_pointer(&vm->def->name);
> +    vm->def->name = g_steal_pointer(&new_dom_name);
>  
>      if (virDomainSnapshotForEach(vm->snapshots,
>                                   qemuDomainSnapshotWriteMetadataIter,
> @@ -19085,22 +19084,25 @@ qemuDomainRenameCallback(virDomainObj *vm,
>                                             VIR_DOMAIN_EVENT_UNDEFINED,
>                                             VIR_DOMAIN_EVENT_UNDEFINED_RENAMED);
>      event_new = virDomainEventLifecycleNewFromObj(vm,
> -                                              VIR_DOMAIN_EVENT_DEFINED,
> -                                              VIR_DOMAIN_EVENT_DEFINED_RENAMED);
> +                                                  VIR_DOMAIN_EVENT_DEFINED,
> +                                                  VIR_DOMAIN_EVENT_DEFINED_RENAMED);
>      virObjectEventStateQueue(driver->domainEventState, event_old);
>      virObjectEventStateQueue(driver->domainEventState, event_new);
>      ret = 0;
>  
>   cleanup:
> -    if (old_dom_name && ret < 0) {
> -        new_dom_name = vm->def->name;
> -        vm->def->name = old_dom_name;
> -        old_dom_name = NULL;
> -    }
> +    if (ret < 0) {
> +        if (old_dom_name) {
> +            new_dom_name = vm->def->name;
> +            vm->def->name = old_dom_name;
> +            old_dom_name = NULL;

Use the g_steal_pointer syntax here too


> +        }
>  
> -    if (ret < 0)
>          virErrorPreserveLast(&err);
> -    qemuDomainNamePathsCleanup(cfg, ret < 0 ? new_dom_name : old_dom_name, true);
> +        qemuDomainNamePathsCleanup(cfg, new_dom_name, true);
> +    } else {
> +        qemuDomainNamePathsCleanup(cfg, old_dom_name, true);
> +    }
>      virErrorRestore(&err);
>      return ret;
>  }
> -- 
> 2.52.0
> 

Reviewed-by: Peter Krempa <pkrempa@redhat.com>