if ((n = virXPathNodeSet("./disks/*", ctxt, &nodes)) < 0)
return NULL;
- if (n && VIR_ALLOC_N(def->disks, n) < 0)
- return NULL;
+ if (n)
+ def->disks = g_new0(virDomainCheckpointDiskDef, n);
def->ndisks = n;
for (i = 0; i < def->ndisks; i++) {
if (virDomainCheckpointDiskDefParseXML(nodes[i], ctxt,
if (!(cpuModels = virObjectNew(virDomainCapsCPUModelsClass)))
return NULL;
- if (VIR_ALLOC_N(cpuModels->models, nmodels) < 0)
- goto error;
+ cpuModels->models = g_new0(virDomainCapsCPUModel, nmodels);
cpuModels->nmodels_max = nmodels;
return cpuModels;
-
- error:
- virObjectUnref(cpuModels);
- return NULL;
}
virCheckFlags(VIR_CONNECT_DOMAIN_QEMU_MONITOR_EVENT_REGISTER_REGEX |
VIR_CONNECT_DOMAIN_QEMU_MONITOR_EVENT_REGISTER_NOCASE,
-1);
- if (VIR_ALLOC(data) < 0)
- return -1;
+ data = g_new0(virDomainQemuMonitorEventData, 1);
data->flags = flags;
if (event && flags != -1) {
if (flags & VIR_CONNECT_DOMAIN_QEMU_MONITOR_EVENT_REGISTER_REGEX) {
{
virNWFilterBindingDefPtr ret;
- if (VIR_ALLOC(ret) < 0)
- return NULL;
+ ret = g_new0(virNWFilterBindingDef, 1);
ret->ownername = g_strdup(vmname);
xmlNodePtr in = NULL, out = NULL;
char *class_id_prop = NULL;
- if (VIR_ALLOC(def) < 0)
- return ret;
+ def = g_new0(virNetDevBandwidth, 1);
if (!node || !virXMLNodeNameEqual(node, "bandwidth")) {
virReportError(VIR_ERR_INVALID_ARG, "%s",
}
if (in) {
- if (VIR_ALLOC(def->in) < 0)
- goto cleanup;
+ def->in = g_new0(virNetDevBandwidthRate, 1);
if (virNetDevBandwidthParseRate(in, def->in) < 0) {
/* helper reported error for us */
}
if (out) {
- if (VIR_ALLOC(def->out) < 0)
- goto cleanup;
+ def->out = g_new0(virNetDevBandwidthRate, 1);
if (virNetDevBandwidthParseRate(out, def->out) < 0) {
/* helper reported error for us */
goto cleanup;
}
- if (VIR_ALLOC_N(def->tag, nTags) < 0)
- goto cleanup;
-
+ def->tag = g_new0(unsigned int, nTags);
def->nativeMode = 0;
def->nativeTag = 0;
for (i = 0; i < nTags; i++) {
virNetDevVPortProfilePtr virtPort = NULL;
xmlNodePtr cur = node->children;
- if (VIR_ALLOC(virtPort) < 0)
- return NULL;
+ virtPort = g_new0(virNetDevVPortProfile, 1);
if ((virtPortType = virXMLPropString(node, "type")) &&
(virtPort->virtPortType = virNetDevVPortTypeFromString(virtPortType)) <= 0) {
virNetDevIPRoutePtr def = NULL;
virSocketAddr testAddr;
- if (VIR_ALLOC(def) < 0)
- return NULL;
+ def = g_new0(virNetDevIPRoute, 1);
def->family = g_strdup(family);
{
virNWFilterIncludeDefPtr ret;
- if (VIR_ALLOC(ret) < 0)
- return NULL;
+ ret = g_new0(virNWFilterIncludeDef, 1);
ret->filterref = virXMLPropString(cur, "filter");
if (!ret->filterref) {
xmlNodePtr cur;
virNWFilterRuleDefPtr ret;
- if (VIR_ALLOC(ret) < 0)
- return NULL;
+ ret = g_new0(virNWFilterRuleDef, 1);
action = virXMLPropString(node, "action");
direction = virXMLPropString(node, "direction");
int chain_priority;
const char *name_prefix;
- if (VIR_ALLOC(ret) < 0)
- return NULL;
+ ret = g_new0(virNWFilterDef, 1);
ret->name = virXPathString("string(./@name)", ctxt);
if (!ret->name) {
while (curr != NULL) {
if (curr->type == XML_ELEMENT_NODE) {
- if (VIR_ALLOC(entry) < 0)
- goto cleanup;
+ entry = g_new0(virNWFilterEntry, 1);
if (virXMLNodeNameEqual(curr, "rule")) {
if (!(entry->rule = virNWFilterRuleParse(curr))) {
return -1;
}
/* Allocate new cb */
- if (VIR_ALLOC(cb) < 0)
- goto cleanup;
+ cb = g_new0(virObjectEventCallback, 1);
cb->conn = virObjectRef(conn);
*callbackID = cb->callbackID = cbList->nextID++;
cb->cb = callback;
static virObjectEventQueuePtr
virObjectEventQueueNew(void)
{
- virObjectEventQueuePtr ret;
-
- ignore_value(VIR_ALLOC(ret));
- return ret;
+ return g_new0(virObjectEventQueue, 1);
}
if (!(state = virObjectLockableNew(virObjectEventStateClass)))
return NULL;
- if (VIR_ALLOC(state->callbacks) < 0)
- goto error;
+ state->callbacks = g_new0(virObjectEventCallbackList, 1);
if (!(state->queue = virObjectEventQueueNew()))
goto error;
ctxt->node = root;
- if (VIR_ALLOC(def) < 0)
- return NULL;
+ def = g_new0(virSecretDef, 1);
prop = virXPathString("string(./@ephemeral)", ctxt);
if (prop != NULL) {
if ((n = virXPathNodeSet("./disks/*", ctxt, &nodes)) < 0)
goto cleanup;
if (flags & VIR_DOMAIN_SNAPSHOT_PARSE_DISKS) {
- if (n && VIR_ALLOC_N(def->disks, n) < 0)
- goto cleanup;
+ if (n)
+ def->disks = g_new0(virDomainSnapshotDiskDef, n);
def->ndisks = n;
for (i = 0; i < def->ndisks; i++) {
if (virDomainSnapshotDiskDefParseXML(nodes[i], ctxt, &def->disks[i],
virChrdevsPtr virChrdevAlloc(void)
{
virChrdevsPtr devs;
- if (VIR_ALLOC(devs) < 0)
- return NULL;
+ devs = g_new0(virChrdevs, 1);
if (virMutexInit(&devs->lock) < 0) {
virReportSystemError(errno, "%s",
return -1;
}
- if (VIR_ALLOC(cbdata) < 0)
- goto error;
-
- if (VIR_ALLOC(ent) < 0)
- goto error;
+ cbdata = g_new0(virChrdevStreamInfo, 1);
+ ent = g_new0(virChrdevHashEntry, 1);
ent->st = st;
ent->dev = g_strdup(path);
{
virDomainCheckpointObjListPtr checkpoints;
- if (VIR_ALLOC(checkpoints) < 0)
- return NULL;
+ checkpoints = g_new0(virDomainCheckpointObjList, 1);
checkpoints->base = virDomainMomentObjListNew();
if (!checkpoints->base) {
VIR_FREE(checkpoints);
if (!chks || count < 0)
return count;
- if (VIR_ALLOC_N(names, count) < 0 ||
- VIR_ALLOC_N(list, count + 1) < 0)
- goto cleanup;
+
+ names = g_new0(char *, count);
+ list = g_new0(virDomainCheckpointPtr, count + 1);
if (virDomainCheckpointObjListGetNames(checkpoints, from, names, count,
flags) < 0)
{
virDomainMomentObjPtr moment;
- if (VIR_ALLOC(moment) < 0)
- return NULL;
+ moment = g_new0(virDomainMomentObj, 1);
VIR_DEBUG("obj=%p", moment);
{
virDomainMomentObjListPtr moments;
- if (VIR_ALLOC(moments) < 0)
- return NULL;
+ moments = g_new0(virDomainMomentObjList, 1);
moments->objs = virHashCreate(50, virDomainMomentObjListDataFree);
if (!moments->objs) {
VIR_FREE(moments);
virObjectRWLockRead(domlist);
sa_assert(domlist->objs);
- if (VIR_ALLOC_N(data.vms, virHashSize(domlist->objs)) < 0) {
- virObjectRWUnlock(domlist);
- return -1;
- }
+ data.vms = g_new0(virDomainObjPtr, virHashSize(domlist->objs));
virHashForEach(domlist->objs, virDomainObjListCollectIterator, &data);
virObjectRWUnlock(domlist);
return -1;
if (domains) {
- if (VIR_ALLOC_N(doms, nvms + 1) < 0)
- goto cleanup;
+ doms = g_new0(virDomainPtr, nvms + 1);
for (i = 0; i < nvms; i++) {
virDomainObjPtr vm = vms[i];
{
virDomainSnapshotObjListPtr snapshots;
- if (VIR_ALLOC(snapshots) < 0)
- return NULL;
+ snapshots = g_new0(virDomainSnapshotObjList, 1);
snapshots->base = virDomainMomentObjListNew();
if (!snapshots->base) {
VIR_FREE(snapshots);
if (!snaps || count < 0)
return count;
- if (VIR_ALLOC_N(names, count) < 0 ||
- VIR_ALLOC_N(list, count + 1) < 0)
- goto cleanup;
+ names = g_new0(char *, count);
+ list = g_new0(virDomainSnapshotPtr, count + 1);
if (virDomainSnapshotObjListGetNames(snapshots, from, names, count,
flags) < 0)
.nifaces = 0, .error = false };
virObjectRWLockRead(ifaceobjs);
- if (ifaces && VIR_ALLOC_N(data.ifaces,
- virHashSize(ifaceobjs->objsName) + 1) < 0)
- goto cleanup;
+ if (ifaces)
+ data.ifaces = g_new0(virInterfacePtr, virHashSize(ifaceobjs->objsName));
virHashForEach(ifaceobjs->objsName, virInterfaceObjListExportCallback, &data);
.nnets = 0, .error = false };
virObjectRWLockRead(netobjs);
- if (nets && VIR_ALLOC_N(data.nets, virHashSize(netobjs->objs) + 1) < 0)
- goto cleanup;
+ if (nets)
+ data.nets = g_new0(virNetworkPtr, virHashSize(netobjs->objs));
virHashForEach(netobjs->objs, virNetworkObjListExportCallback, &data);
if (ports) {
*ports = NULL;
- if (VIR_ALLOC_N(data.ports, virHashSize(obj->ports) + 1) < 0)
- goto cleanup;
+ data.ports = g_new0(virNetworkPortPtr, virHashSize(obj->ports));
}
virHashForEach(obj->ports, virNetworkObjPortListExportCallback, &data);
g_autofree char *managed = NULL;
g_autofree char *driver = NULL;
- if (VIR_ALLOC(def) < 0)
- return NULL;
+ def = g_new0(virNetworkPortDef, 1);
uuid = virXPathString("string(./uuid)", ctxt);
if (!uuid) {
.devices = NULL, .ndevices = 0, .error = false };
virObjectRWLockRead(devs);
- if (devices &&
- VIR_ALLOC_N(data.devices, virHashSize(devs->objs) + 1) < 0) {
- virObjectRWUnlock(devs);
- return -1;
- }
+ if (devices)
+ data.devices = g_new0(virNodeDevicePtr, virHashSize(devs->objs));
virHashForEach(devs->objs, virNodeDeviceObjListExportCallback, &data);
virObjectRWUnlock(devs);
{
virNWFilterBindingDefPtr ret;
- if (VIR_ALLOC(ret) < 0)
- return NULL;
+ ret = g_new0(virNWFilterBindingDef, 1);
ret->ownername = g_strdup(src->ownername);
char *mac = NULL;
xmlNodePtr node;
- if (VIR_ALLOC(ret) < 0)
- return NULL;
+ ret = g_new0(virNWFilterBindingDef, 1);
ret->portdevname = virXPathString("string(./portdev/@name)", ctxt);
if (!ret->portdevname) {
virObjectRWLockRead(domlist);
sa_assert(domlist->objs);
- if (VIR_ALLOC_N(data.bindings, virHashSize(domlist->objs)) < 0) {
- virObjectRWUnlock(domlist);
- return -1;
- }
+ data.bindings = g_new0(virNWFilterBindingObjPtr, virHashSize(domlist->objs));
virHashForEach(domlist->objs, virNWFilterBindingObjListCollectIterator, &data);
virObjectRWUnlock(domlist);
return -1;
if (bindinglist) {
- if (VIR_ALLOC_N(*bindinglist, nbindings + 1) < 0)
- goto cleanup;
+ *bindinglist = g_new0(virNWFilterBindingPtr, nbindings + 1);
for (i = 0; i < nbindings; i++) {
virNWFilterBindingObjPtr binding = bindingobjs[i];
{
virNWFilterObjPtr obj;
- if (VIR_ALLOC(obj) < 0)
- return NULL;
+ obj = g_new0(virNWFilterObj, 1);
if (virMutexInitRecursive(&obj->lock) < 0) {
virReportError(VIR_ERR_INTERNAL_ERROR,
{
virNWFilterObjListPtr nwfilters;
- if (VIR_ALLOC(nwfilters) < 0)
- return NULL;
+ nwfilters = g_new0(virNWFilterObjList, 1);
return nwfilters;
}
goto cleanup;
}
- if (VIR_ALLOC_N(tmp_filters, nwfilters->count + 1) < 0)
- goto cleanup;
+ tmp_filters = g_new0(virNWFilterPtr, nwfilters->count + 1);
for (i = 0; i < nwfilters->count; i++) {
obj = nwfilters->objs[i];