static virCPUppc64ModelPtr
ppc64ModelCopy(const virCPUppc64Model *model)
{
- virCPUppc64ModelPtr copy;
+ g_autoptr(virCPUppc64Model) copy = NULL;
if (VIR_ALLOC(copy) < 0)
- goto error;
+ return NULL;
copy->name = g_strdup(model->name);
if (ppc64DataCopy(©->data, &model->data) < 0)
- goto error;
+ return NULL;
copy->vendor = model->vendor;
- return copy;
-
- error:
- ppc64ModelFree(copy);
- return NULL;
+ return g_steal_pointer(©);
}
static virCPUppc64ModelPtr
void *data)
{
struct ppc64_map *map = data;
- virCPUppc64ModelPtr model;
+ g_autoptr(virCPUppc64Model) model = NULL;
xmlNodePtr *nodes = NULL;
char *vendor = NULL;
unsigned long pvr;
ret = 0;
cleanup:
- ppc64ModelFree(model);
VIR_FREE(vendor);
VIR_FREE(nodes);
return ret;
char **message)
{
struct ppc64_map *map = NULL;
- virCPUppc64ModelPtr host_model = NULL;
- virCPUppc64ModelPtr guest_model = NULL;
+ g_autoptr(virCPUppc64Model) host_model = NULL;
+ g_autoptr(virCPUppc64Model) guest_model = NULL;
virCPUDefPtr cpu = NULL;
virCPUCompareResult ret = VIR_CPU_COMPARE_ERROR;
virArch arch;
cleanup:
virCPUDefFree(cpu);
ppc64MapFree(map);
- ppc64ModelFree(host_model);
- ppc64ModelFree(guest_model);
return ret;
}