mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-02-01 17:35:17 +00:00
Switch away from virHashFree
Use 'g_clear_pointer(&ptr, g_hash_table_unref)' instead. In few instances it allows us to also remove explicit clearing of pointers. Signed-off-by: Peter Krempa <pkrempa@redhat.com> Reviewed-by: Ján Tomko <jtomko@redhat.com> Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
This commit is contained in:
parent
d2f2c354df
commit
690efb960f
@ -1377,7 +1377,7 @@ void virDomainCCWAddressSetFree(virDomainCCWAddressSet *addrs)
|
||||
if (!addrs)
|
||||
return;
|
||||
|
||||
virHashFree(addrs->defined);
|
||||
g_clear_pointer(&addrs->defined, g_hash_table_unref);
|
||||
g_free(addrs);
|
||||
}
|
||||
|
||||
|
@ -2640,7 +2640,7 @@ virDomainNetDefFree(virDomainNetDef *def)
|
||||
virDomainDeviceInfoClear(&def->info);
|
||||
|
||||
g_free(def->filter);
|
||||
virHashFree(def->filterparams);
|
||||
g_clear_pointer(&def->filterparams, g_hash_table_unref);
|
||||
|
||||
virNetDevBandwidthFree(def->bandwidth);
|
||||
virNetDevVlanClear(&def->vlan);
|
||||
|
@ -323,7 +323,7 @@ virNWFilterIncludeDefFree(virNWFilterIncludeDef *inc)
|
||||
{
|
||||
if (!inc)
|
||||
return;
|
||||
virHashFree(inc->params);
|
||||
g_clear_pointer(&inc->params, g_hash_table_unref);
|
||||
g_free(inc->filterref);
|
||||
g_free(inc);
|
||||
}
|
||||
|
@ -156,6 +156,5 @@ virNWFilterIPAddrMapInit(void)
|
||||
void
|
||||
virNWFilterIPAddrMapShutdown(void)
|
||||
{
|
||||
virHashFree(ipAddressMap);
|
||||
ipAddressMap = NULL;
|
||||
g_clear_pointer(&ipAddressMap, g_hash_table_unref);
|
||||
}
|
||||
|
@ -295,7 +295,7 @@ void virChrdevFree(virChrdevs *devs)
|
||||
|
||||
virMutexLock(&devs->lock);
|
||||
virHashForEachSafe(devs->hash, virChrdevFreeClearCallbacks, NULL);
|
||||
virHashFree(devs->hash);
|
||||
g_clear_pointer(&devs->hash, g_hash_table_unref);
|
||||
virMutexUnlock(&devs->lock);
|
||||
virMutexDestroy(&devs->lock);
|
||||
|
||||
|
@ -282,7 +282,7 @@ virDomainMomentObjListFree(virDomainMomentObjList *moments)
|
||||
{
|
||||
if (!moments)
|
||||
return;
|
||||
virHashFree(moments->objs);
|
||||
g_clear_pointer(&moments->objs, g_hash_table_unref);
|
||||
g_free(moments);
|
||||
}
|
||||
|
||||
|
@ -85,8 +85,8 @@ static void virDomainObjListDispose(void *obj)
|
||||
{
|
||||
virDomainObjList *doms = obj;
|
||||
|
||||
virHashFree(doms->objs);
|
||||
virHashFree(doms->objsName);
|
||||
g_clear_pointer(&doms->objs, g_hash_table_unref);
|
||||
g_clear_pointer(&doms->objsName, g_hash_table_unref);
|
||||
}
|
||||
|
||||
|
||||
|
@ -345,7 +345,7 @@ virInterfaceObjListDispose(void *obj)
|
||||
{
|
||||
virInterfaceObjList *interfaces = obj;
|
||||
|
||||
virHashFree(interfaces->objsName);
|
||||
g_clear_pointer(&interfaces->objsName, g_hash_table_unref);
|
||||
}
|
||||
|
||||
|
||||
|
@ -464,7 +464,7 @@ virNetworkObjDispose(void *opaque)
|
||||
{
|
||||
virNetworkObj *obj = opaque;
|
||||
|
||||
virHashFree(obj->ports);
|
||||
g_clear_pointer(&obj->ports, g_hash_table_unref);
|
||||
virNetworkDefFree(obj->def);
|
||||
virNetworkDefFree(obj->newDef);
|
||||
virBitmapFree(obj->classIdMap);
|
||||
@ -477,7 +477,7 @@ virNetworkObjListDispose(void *opaque)
|
||||
{
|
||||
virNetworkObjList *nets = opaque;
|
||||
|
||||
virHashFree(nets->objs);
|
||||
g_clear_pointer(&nets->objs, g_hash_table_unref);
|
||||
}
|
||||
|
||||
|
||||
|
@ -453,7 +453,7 @@ virNodeDeviceObjListDispose(void *obj)
|
||||
{
|
||||
virNodeDeviceObjList *devs = obj;
|
||||
|
||||
virHashFree(devs->objs);
|
||||
g_clear_pointer(&devs->objs, g_hash_table_unref);
|
||||
}
|
||||
|
||||
|
||||
|
@ -40,7 +40,7 @@ virNWFilterBindingDefFree(virNWFilterBindingDef *def)
|
||||
g_free(def->portdevname);
|
||||
g_free(def->linkdevname);
|
||||
g_free(def->filter);
|
||||
virHashFree(def->filterparams);
|
||||
g_clear_pointer(&def->filterparams, g_hash_table_unref);
|
||||
|
||||
g_free(def);
|
||||
}
|
||||
|
@ -77,7 +77,7 @@ virNWFilterBindingObjListDispose(void *obj)
|
||||
{
|
||||
virNWFilterBindingObjList *bindings = obj;
|
||||
|
||||
virHashFree(bindings->objs);
|
||||
g_clear_pointer(&bindings->objs, g_hash_table_unref);
|
||||
}
|
||||
|
||||
|
||||
|
@ -149,7 +149,7 @@ virSecretObjListDispose(void *obj)
|
||||
{
|
||||
virSecretObjList *secrets = obj;
|
||||
|
||||
virHashFree(secrets->objs);
|
||||
g_clear_pointer(&secrets->objs, g_hash_table_unref);
|
||||
}
|
||||
|
||||
|
||||
|
@ -183,9 +183,9 @@ virStorageVolObjListDispose(void *opaque)
|
||||
{
|
||||
virStorageVolObjList *vols = opaque;
|
||||
|
||||
virHashFree(vols->objsKey);
|
||||
virHashFree(vols->objsName);
|
||||
virHashFree(vols->objsPath);
|
||||
g_clear_pointer(&vols->objsKey, g_hash_table_unref);
|
||||
g_clear_pointer(&vols->objsName, g_hash_table_unref);
|
||||
g_clear_pointer(&vols->objsPath, g_hash_table_unref);
|
||||
}
|
||||
|
||||
|
||||
@ -382,8 +382,8 @@ virStoragePoolObjListDispose(void *opaque)
|
||||
{
|
||||
virStoragePoolObjList *pools = opaque;
|
||||
|
||||
virHashFree(pools->objs);
|
||||
virHashFree(pools->objsName);
|
||||
g_clear_pointer(&pools->objs, g_hash_table_unref);
|
||||
g_clear_pointer(&pools->objsName, g_hash_table_unref);
|
||||
}
|
||||
|
||||
|
||||
|
@ -357,7 +357,7 @@ hypervAddEmbeddedParam(hypervInvokeParamsList *params,
|
||||
void
|
||||
hypervFreeEmbeddedParam(GHashTable *p)
|
||||
{
|
||||
virHashFree(p);
|
||||
g_clear_pointer(&p, g_hash_table_unref);
|
||||
}
|
||||
|
||||
|
||||
|
@ -78,7 +78,7 @@ virCloseCallbacksDispose(void *obj)
|
||||
{
|
||||
virCloseCallbacks *closeCallbacks = obj;
|
||||
|
||||
virHashFree(closeCallbacks->list);
|
||||
g_clear_pointer(&closeCallbacks->list, g_hash_table_unref);
|
||||
}
|
||||
|
||||
int
|
||||
|
@ -166,7 +166,7 @@ libxlLoggerFree(libxlLogger *logger)
|
||||
xentoollog_logger *xtl_logger = (xentoollog_logger*)logger;
|
||||
if (logger->defaultLogFile)
|
||||
VIR_FORCE_FCLOSE(logger->defaultLogFile);
|
||||
virHashFree(logger->files);
|
||||
g_clear_pointer(&logger->files, g_hash_table_unref);
|
||||
xtl_logger_destroy(xtl_logger);
|
||||
}
|
||||
|
||||
|
@ -89,7 +89,7 @@ virLockDaemonFree(virLockDaemon *lockd)
|
||||
|
||||
g_mutex_clear(&lockd->lock);
|
||||
virObjectUnref(lockd->dmn);
|
||||
virHashFree(lockd->lockspaces);
|
||||
g_clear_pointer(&lockd->lockspaces, g_hash_table_unref);
|
||||
virLockSpaceFree(lockd->defaultLockspace);
|
||||
|
||||
g_free(lockd);
|
||||
|
@ -2080,13 +2080,13 @@ virNWFilterDHCPSnoopShutdown(void)
|
||||
virNWFilterSnoopLock();
|
||||
|
||||
virNWFilterSnoopLeaseFileClose();
|
||||
virHashFree(virNWFilterSnoopState.ifnameToKey);
|
||||
virHashFree(virNWFilterSnoopState.snoopReqs);
|
||||
g_clear_pointer(&virNWFilterSnoopState.ifnameToKey, g_hash_table_unref);
|
||||
g_clear_pointer(&virNWFilterSnoopState.snoopReqs, g_hash_table_unref);
|
||||
|
||||
virNWFilterSnoopUnlock();
|
||||
|
||||
virNWFilterSnoopActiveLock();
|
||||
virHashFree(virNWFilterSnoopState.active);
|
||||
g_clear_pointer(&virNWFilterSnoopState.active, g_hash_table_unref);
|
||||
virNWFilterSnoopActiveUnlock();
|
||||
}
|
||||
|
||||
|
@ -121,7 +121,7 @@ virNWFilterRuleInstFree(virNWFilterRuleInst *inst)
|
||||
if (!inst)
|
||||
return;
|
||||
|
||||
virHashFree(inst->vars);
|
||||
g_clear_pointer(&inst->vars, g_hash_table_unref);
|
||||
g_free(inst);
|
||||
}
|
||||
|
||||
|
@ -805,9 +805,6 @@ virNWFilterLearnShutdown(void)
|
||||
|
||||
virNWFilterLearnThreadsTerminate(false);
|
||||
|
||||
virHashFree(pendingLearnReq);
|
||||
pendingLearnReq = NULL;
|
||||
|
||||
virHashFree(ifaceLockMap);
|
||||
ifaceLockMap = NULL;
|
||||
g_clear_pointer(&pendingLearnReq, g_hash_table_unref);
|
||||
g_clear_pointer(&ifaceLockMap, g_hash_table_unref);
|
||||
}
|
||||
|
@ -1701,7 +1701,7 @@ qemuDomainObjPrivateFree(void *data)
|
||||
g_clear_pointer(&priv->migSecinfo, qemuDomainSecretInfoFree);
|
||||
qemuDomainMasterKeyFree(priv);
|
||||
|
||||
virHashFree(priv->blockjobs);
|
||||
g_clear_pointer(&priv->blockjobs, g_hash_table_unref);
|
||||
|
||||
/* This should never be non-NULL if we get here, but just in case... */
|
||||
if (priv->eventThread) {
|
||||
|
@ -1084,7 +1084,7 @@ qemuStateCleanup(void)
|
||||
virPortAllocatorRangeFree(qemu_driver->migrationPorts);
|
||||
virPortAllocatorRangeFree(qemu_driver->webSocketPorts);
|
||||
virPortAllocatorRangeFree(qemu_driver->remotePorts);
|
||||
virHashFree(qemu_driver->sharedDevices);
|
||||
g_clear_pointer(&qemu_driver->sharedDevices, g_hash_table_unref);
|
||||
virObjectUnref(qemu_driver->hostdevMgr);
|
||||
virObjectUnref(qemu_driver->securityManager);
|
||||
virObjectUnref(qemu_driver->domainEventState);
|
||||
|
@ -110,7 +110,7 @@ virNetDaemonDispose(void *obj)
|
||||
VIR_FORCE_CLOSE(dmn->autoShutdownInhibitFd);
|
||||
g_free(dmn->stateStopThread);
|
||||
|
||||
virHashFree(dmn->servers);
|
||||
g_clear_pointer(&dmn->servers, g_hash_table_unref);
|
||||
|
||||
virJSONValueFree(dmn->srvObject);
|
||||
}
|
||||
|
@ -692,7 +692,7 @@ virSecuritySELinuxLXCInitialize(virSecurityManager *mgr)
|
||||
VIR_FREE(data->domain_context);
|
||||
VIR_FREE(data->file_context);
|
||||
VIR_FREE(data->content_context);
|
||||
virHashFree(data->mcs);
|
||||
g_clear_pointer(&data->mcs, g_hash_table_unref);
|
||||
return -1;
|
||||
}
|
||||
|
||||
@ -764,7 +764,7 @@ virSecuritySELinuxQEMUInitialize(virSecurityManager *mgr)
|
||||
VIR_FREE(data->alt_domain_context);
|
||||
VIR_FREE(data->file_context);
|
||||
VIR_FREE(data->content_context);
|
||||
virHashFree(data->mcs);
|
||||
g_clear_pointer(&data->mcs, g_hash_table_unref);
|
||||
return -1;
|
||||
}
|
||||
|
||||
@ -1030,7 +1030,7 @@ virSecuritySELinuxDriverClose(virSecurityManager *mgr)
|
||||
if (data->label_handle)
|
||||
selabel_close(data->label_handle);
|
||||
|
||||
virHashFree(data->mcs);
|
||||
g_clear_pointer(&data->mcs, g_hash_table_unref);
|
||||
|
||||
VIR_FREE(data->domain_context);
|
||||
VIR_FREE(data->alt_domain_context);
|
||||
|
@ -77,7 +77,7 @@ virFileCacheDispose(void *obj)
|
||||
g_free(cache->dir);
|
||||
g_free(cache->suffix);
|
||||
|
||||
virHashFree(cache->table);
|
||||
g_clear_pointer(&cache->table, g_hash_table_unref);
|
||||
|
||||
virFileCachePrivFree(cache);
|
||||
}
|
||||
|
@ -112,7 +112,7 @@ virHashAtomicDispose(void *obj)
|
||||
{
|
||||
virHashAtomic *hash = obj;
|
||||
|
||||
virHashFree(hash->hash);
|
||||
g_clear_pointer(&hash->hash, g_hash_table_unref);
|
||||
}
|
||||
|
||||
|
||||
|
@ -477,7 +477,7 @@ void virLockSpaceFree(virLockSpace *lockspace)
|
||||
if (!lockspace)
|
||||
return;
|
||||
|
||||
virHashFree(lockspace->resources);
|
||||
g_clear_pointer(&lockspace->resources, g_hash_table_unref);
|
||||
g_free(lockspace->dir);
|
||||
virMutexDestroy(&lockspace->lock);
|
||||
g_free(lockspace);
|
||||
|
@ -62,7 +62,7 @@ virMacMapDispose(void *obj)
|
||||
while (g_hash_table_iter_next(&htitr, NULL, &value))
|
||||
g_slist_free_full(value, g_free);
|
||||
|
||||
virHashFree(mgr->macs);
|
||||
g_clear_pointer(&mgr->macs, g_hash_table_unref);
|
||||
}
|
||||
|
||||
|
||||
|
@ -1108,7 +1108,7 @@ virSystemdActivationFree(virSystemdActivation *act)
|
||||
if (!act)
|
||||
return;
|
||||
|
||||
virHashFree(act->fds);
|
||||
g_clear_pointer(&act->fds, g_hash_table_unref);
|
||||
|
||||
g_free(act);
|
||||
}
|
||||
|
@ -166,7 +166,7 @@ virNWFilterRuleInstFree(virNWFilterRuleInst *inst)
|
||||
if (!inst)
|
||||
return;
|
||||
|
||||
virHashFree(inst->vars);
|
||||
g_clear_pointer(&inst->vars, g_hash_table_unref);
|
||||
g_free(inst);
|
||||
}
|
||||
|
||||
|
@ -502,10 +502,9 @@ void freePaths(void)
|
||||
virMutexLock(&m);
|
||||
init_hash();
|
||||
|
||||
virHashFree(selinux_paths);
|
||||
virHashFree(chown_paths);
|
||||
virHashFree(xattr_paths);
|
||||
selinux_paths = chown_paths = xattr_paths = NULL;
|
||||
g_clear_pointer(&selinux_paths, g_hash_table_unref);
|
||||
g_clear_pointer(&chown_paths, g_hash_table_unref);
|
||||
g_clear_pointer(&xattr_paths, g_hash_table_unref);
|
||||
virMutexUnlock(&m);
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user