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>
if (!addrs)
return;
- virHashFree(addrs->defined);
+ g_clear_pointer(&addrs->defined, g_hash_table_unref);
g_free(addrs);
}
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);
{
if (!inc)
return;
- virHashFree(inc->params);
+ g_clear_pointer(&inc->params, g_hash_table_unref);
g_free(inc->filterref);
g_free(inc);
}
void
virNWFilterIPAddrMapShutdown(void)
{
- virHashFree(ipAddressMap);
- ipAddressMap = NULL;
+ g_clear_pointer(&ipAddressMap, g_hash_table_unref);
}
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);
{
if (!moments)
return;
- virHashFree(moments->objs);
+ g_clear_pointer(&moments->objs, g_hash_table_unref);
g_free(moments);
}
{
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);
}
{
virInterfaceObjList *interfaces = obj;
- virHashFree(interfaces->objsName);
+ g_clear_pointer(&interfaces->objsName, g_hash_table_unref);
}
{
virNetworkObj *obj = opaque;
- virHashFree(obj->ports);
+ g_clear_pointer(&obj->ports, g_hash_table_unref);
virNetworkDefFree(obj->def);
virNetworkDefFree(obj->newDef);
virBitmapFree(obj->classIdMap);
{
virNetworkObjList *nets = opaque;
- virHashFree(nets->objs);
+ g_clear_pointer(&nets->objs, g_hash_table_unref);
}
{
virNodeDeviceObjList *devs = obj;
- virHashFree(devs->objs);
+ g_clear_pointer(&devs->objs, g_hash_table_unref);
}
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);
}
{
virNWFilterBindingObjList *bindings = obj;
- virHashFree(bindings->objs);
+ g_clear_pointer(&bindings->objs, g_hash_table_unref);
}
{
virSecretObjList *secrets = obj;
- virHashFree(secrets->objs);
+ g_clear_pointer(&secrets->objs, g_hash_table_unref);
}
{
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);
}
{
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);
}
void
hypervFreeEmbeddedParam(GHashTable *p)
{
- virHashFree(p);
+ g_clear_pointer(&p, g_hash_table_unref);
}
{
virCloseCallbacks *closeCallbacks = obj;
- virHashFree(closeCallbacks->list);
+ g_clear_pointer(&closeCallbacks->list, g_hash_table_unref);
}
int
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);
}
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);
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();
}
if (!inst)
return;
- virHashFree(inst->vars);
+ g_clear_pointer(&inst->vars, g_hash_table_unref);
g_free(inst);
}
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);
}
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) {
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);
VIR_FORCE_CLOSE(dmn->autoShutdownInhibitFd);
g_free(dmn->stateStopThread);
- virHashFree(dmn->servers);
+ g_clear_pointer(&dmn->servers, g_hash_table_unref);
virJSONValueFree(dmn->srvObject);
}
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;
}
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;
}
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);
g_free(cache->dir);
g_free(cache->suffix);
- virHashFree(cache->table);
+ g_clear_pointer(&cache->table, g_hash_table_unref);
virFileCachePrivFree(cache);
}
{
virHashAtomic *hash = obj;
- virHashFree(hash->hash);
+ g_clear_pointer(&hash->hash, g_hash_table_unref);
}
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);
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);
}
if (!act)
return;
- virHashFree(act->fds);
+ g_clear_pointer(&act->fds, g_hash_table_unref);
g_free(act);
}
if (!inst)
return;
- virHashFree(inst->vars);
+ g_clear_pointer(&inst->vars, g_hash_table_unref);
g_free(inst);
}
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);
}