mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-25 23:25:24 +00:00
qemu: block: Add and use AUTOPTR func for qemuBlockNodeNameBackingChainData
This is a locally used helper struct but we can make use of automatic freeing for it. Signed-off-by: Peter Krempa <pkrempa@redhat.com> Reviewed-by: Ján Tomko <jtomko@redhat.com>
This commit is contained in:
parent
7141bdd5bf
commit
6542fbe2d5
@ -88,6 +88,9 @@ qemuBlockNodeNameBackingChainDataFree(qemuBlockNodeNameBackingChainDataPtr data)
|
|||||||
VIR_FREE(data);
|
VIR_FREE(data);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
VIR_DEFINE_AUTOPTR_FUNC(qemuBlockNodeNameBackingChainData,
|
||||||
|
qemuBlockNodeNameBackingChainDataFree);
|
||||||
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
qemuBlockNodeNameBackingChainDataHashEntryFree(void *opaque,
|
qemuBlockNodeNameBackingChainDataHashEntryFree(void *opaque,
|
||||||
@ -128,7 +131,7 @@ qemuBlockNodeNameGetBackingChainBacking(virJSONValuePtr next,
|
|||||||
virHashTablePtr nodenamestable,
|
virHashTablePtr nodenamestable,
|
||||||
qemuBlockNodeNameBackingChainDataPtr *nodenamedata)
|
qemuBlockNodeNameBackingChainDataPtr *nodenamedata)
|
||||||
{
|
{
|
||||||
qemuBlockNodeNameBackingChainDataPtr data = NULL;
|
VIR_AUTOPTR(qemuBlockNodeNameBackingChainData) data = NULL;
|
||||||
qemuBlockNodeNameBackingChainDataPtr backingdata = NULL;
|
qemuBlockNodeNameBackingChainDataPtr backingdata = NULL;
|
||||||
virJSONValuePtr backing = virJSONValueObjectGetObject(next, "backing");
|
virJSONValuePtr backing = virJSONValueObjectGetObject(next, "backing");
|
||||||
virJSONValuePtr parent = virJSONValueObjectGetObject(next, "parent");
|
virJSONValuePtr parent = virJSONValueObjectGetObject(next, "parent");
|
||||||
@ -189,7 +192,6 @@ qemuBlockNodeNameGetBackingChainBacking(virJSONValuePtr next,
|
|||||||
ret = 0;
|
ret = 0;
|
||||||
|
|
||||||
cleanup:
|
cleanup:
|
||||||
qemuBlockNodeNameBackingChainDataFree(data);
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -201,7 +203,7 @@ qemuBlockNodeNameGetBackingChainDisk(size_t pos ATTRIBUTE_UNUSED,
|
|||||||
{
|
{
|
||||||
struct qemuBlockNodeNameGetBackingChainData *data = opaque;
|
struct qemuBlockNodeNameGetBackingChainData *data = opaque;
|
||||||
const char *device = virJSONValueObjectGetString(item, "device");
|
const char *device = virJSONValueObjectGetString(item, "device");
|
||||||
qemuBlockNodeNameBackingChainDataPtr devicedata = NULL;
|
VIR_AUTOPTR(qemuBlockNodeNameBackingChainData) devicedata = NULL;
|
||||||
int ret = -1;
|
int ret = -1;
|
||||||
|
|
||||||
if (qemuBlockNodeNameGetBackingChainBacking(item, data->nodenamestable,
|
if (qemuBlockNodeNameGetBackingChainBacking(item, data->nodenamestable,
|
||||||
@ -216,7 +218,6 @@ qemuBlockNodeNameGetBackingChainDisk(size_t pos ATTRIBUTE_UNUSED,
|
|||||||
ret = 1; /* we don't really want to steal @item */
|
ret = 1; /* we don't really want to steal @item */
|
||||||
|
|
||||||
cleanup:
|
cleanup:
|
||||||
qemuBlockNodeNameBackingChainDataFree(devicedata);
|
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user