]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
libxlLoggerNew: Avoid virHashFree by rearranging code
authorPeter Krempa <pkrempa@redhat.com>
Tue, 30 Nov 2021 10:34:43 +0000 (11:34 +0100)
committerPeter Krempa <pkrempa@redhat.com>
Wed, 1 Dec 2021 12:53:11 +0000 (13:53 +0100)
Allocate the hash table only after the log file is opened so that we
don't need to deallocate it on failure.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
src/libxl/libxl_logger.c

index f7b5c8ee161ab31e4f3bc7471f53701eed7bb231..46925781244730f466374601ec6c425d136e36f6 100644 (file)
@@ -149,14 +149,13 @@ libxlLoggerNew(const char *logDir, virLogPriority minLevel)
         break;
     }
     logger.logDir = logDir;
-    logger.files = virHashNew(libxlLoggerFileFree);
 
     path = g_strdup_printf("%s/libxl-driver.log", logDir);
 
-    if ((logger.defaultLogFile = fopen(path, "a")) == NULL) {
-        virHashFree(logger.files);
+    if ((logger.defaultLogFile = fopen(path, "a")) == NULL)
         return NULL;
-    }
+
+    logger.files = virHashNew(libxlLoggerFileFree);
 
     return XTL_NEW_LOGGER(libvirt, logger);
 }