As libxml2 and glib memory allocation functions can be overridden with custom functions, it's important to use the right free functions for allocated memory. --- osinfo/osinfo_loader.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/osinfo/osinfo_loader.c b/osinfo/osinfo_loader.c index a4dd01d..1c27187 100644 --- a/osinfo/osinfo_loader.c +++ b/osinfo/osinfo_loader.c @@ -355,7 +355,7 @@ static void osinfo_loader_device(OsinfoLoader *loader, } OsinfoDevice *device = osinfo_loader_get_device(loader, id); - g_free(id); + xmlFree(id); osinfo_loader_entity(loader, OSINFO_ENTITY(device), keys, ctxt, root, err); } @@ -384,7 +384,7 @@ static void osinfo_loader_device_link(OsinfoLoader *loader, goto cleanup; } OsinfoDevice *dev = osinfo_loader_get_device(loader, id); - g_free(id); + xmlFree(id); OsinfoDeviceLink *devlink = NULL; if (OSINFO_IS_PLATFORM(entity)) { @@ -432,7 +432,7 @@ static void osinfo_loader_product_relshp(OsinfoLoader *loader, relproduct = OSINFO_PRODUCT(osinfo_loader_get_platform(loader, id)); else relproduct = OSINFO_PRODUCT(osinfo_loader_get_os(loader, id)); - g_free(id); + xmlFree(id); osinfo_product_add_related(product, relshp, relproduct); } @@ -504,7 +504,7 @@ static void osinfo_loader_platform(OsinfoLoader *loader, } OsinfoPlatform *platform = osinfo_loader_get_platform(loader, id); - g_free(id); + xmlFree(id); osinfo_loader_entity(loader, OSINFO_ENTITY(platform), keys, ctxt, root, err); if (error_is_set(err)) @@ -537,7 +537,7 @@ static void osinfo_loader_deployment(OsinfoLoader *loader, gchar *osid = osinfo_loader_string("string(./os/@id)", ctxt, err); if (!osid && 0) { OSINFO_ERROR(err, _("Missing deployment os id property")); - g_free(id); + xmlFree(id); return; } OsinfoOs *os = osinfo_loader_get_os(loader, osid); @@ -546,14 +546,14 @@ static void osinfo_loader_deployment(OsinfoLoader *loader, gchar *platformid = osinfo_loader_string("string(./platform/@id)", ctxt, err); if (!platformid) { OSINFO_ERROR(err, _("Missing deployment platform id property")); - g_free(id); + xmlFree(id); return; } OsinfoPlatform *platform = osinfo_loader_get_platform(loader, platformid); g_free(platformid); OsinfoDeployment *deployment = osinfo_deployment_new(id, os, platform); - g_free(id); + xmlFree(id); osinfo_loader_entity(loader, OSINFO_ENTITY(deployment), keys, ctxt, root, err); if (error_is_set(err)) @@ -590,8 +590,8 @@ static void osinfo_loader_install_config_params(OsinfoLoader *loader, osinfo_install_script_add_config_param(OSINFO_INSTALL_SCRIPT(entity), param); - g_free(name); - g_free(policy); + xmlFree(name); + xmlFree(policy); }; g_free(nodes); @@ -647,7 +647,7 @@ static void osinfo_loader_install_script(OsinfoLoader *loader, OsinfoInstallScript *installScript = osinfo_loader_get_install_script(loader, id); - g_free(id); + xmlFree(id); osinfo_loader_entity(loader, OSINFO_ENTITY(installScript), keys, ctxt, root, err); if (error_is_set(err)) @@ -1016,7 +1016,7 @@ static void osinfo_loader_os(OsinfoLoader *loader, } OsinfoInstallScript *script; script = osinfo_loader_get_install_script(loader, scriptid); - g_free(scriptid); + xmlFree(scriptid); osinfo_os_add_install_script(os, script); } @@ -1024,7 +1024,7 @@ static void osinfo_loader_os(OsinfoLoader *loader, g_free(nodes); cleanup: - g_free(id); + xmlFree(id); } static void osinfo_loader_root(OsinfoLoader *loader, -- 1.8.0.1 _______________________________________________ virt-tools-list mailing list virt-tools-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/virt-tools-list