[PATCH] virsh: Fix resource leaks when editing files.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The cleanup path in virsh-edit helper was never reached when the edit
was successful leaking the document in memory as well as the temporary
file.
---
 tools/virsh-edit.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/tools/virsh-edit.c b/tools/virsh-edit.c
index 512ac0d..0ed0e8f 100644
--- a/tools/virsh-edit.c
+++ b/tools/virsh-edit.c
@@ -68,6 +68,7 @@ do {
     char *doc_edited = NULL;
     char *doc_reread = NULL;
     const char *msg = NULL;
+    bool edit_success = false;

     /* Get the XML configuration of the object. */
     doc = (EDIT_GET_XML);
@@ -139,7 +140,7 @@ redefine:
         }
     }

-    break;
+    edit_success = true;

 edit_cleanup:
     VIR_FREE(doc);
@@ -149,7 +150,9 @@ edit_cleanup:
         unlink (tmp);
         VIR_FREE(tmp);
     }
-    goto cleanup;
+
+    if (!edit_success)
+        goto cleanup;

 } while (0);

-- 
1.7.12

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list


[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]