From 20f0cd4ca3bcd5aaeec9c03074b284456a880f9c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A1n=20Tomko?= Date: Tue, 11 Mar 2014 08:44:22 +0100 Subject: [PATCH] Introduce virStoragePoolSourceDeviceClear Open-coding one VIR_FREE in the test suite just doesn't seem right. --- src/conf/storage_conf.c | 13 +++++++++---- src/conf/storage_conf.h | 1 + src/libvirt_private.syms | 1 + 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/src/conf/storage_conf.c b/src/conf/storage_conf.c index ac323d0d89..9c2962fbfe 100644 --- a/src/conf/storage_conf.c +++ b/src/conf/storage_conf.c @@ -356,6 +356,13 @@ virStoragePoolSourceAdapterClear(virStoragePoolSourceAdapter adapter) } } +void +virStoragePoolSourceDeviceClear(virStoragePoolSourceDevicePtr dev) +{ + VIR_FREE(dev->freeExtents); + VIR_FREE(dev->path); +} + void virStoragePoolSourceClear(virStoragePoolSourcePtr source) { @@ -369,10 +376,8 @@ virStoragePoolSourceClear(virStoragePoolSourcePtr source) } VIR_FREE(source->hosts); - for (i = 0; i < source->ndevice; i++) { - VIR_FREE(source->devices[i].freeExtents); - VIR_FREE(source->devices[i].path); - } + for (i = 0; i < source->ndevice; i++) + virStoragePoolSourceDeviceClear(&source->devices[i]); VIR_FREE(source->devices); VIR_FREE(source->dir); VIR_FREE(source->name); diff --git a/src/conf/storage_conf.h b/src/conf/storage_conf.h index 251b9681e1..636c9aa833 100644 --- a/src/conf/storage_conf.h +++ b/src/conf/storage_conf.h @@ -432,6 +432,7 @@ int virStoragePoolObjDeleteDef(virStoragePoolObjPtr pool); void virStorageVolDefFree(virStorageVolDefPtr def); void virStoragePoolSourceClear(virStoragePoolSourcePtr source); +void virStoragePoolSourceDeviceClear(virStoragePoolSourceDevicePtr dev); void virStoragePoolSourceFree(virStoragePoolSourcePtr source); void virStoragePoolDefFree(virStoragePoolDefPtr def); void virStoragePoolObjFree(virStoragePoolObjPtr pool); diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms index f1607cd6ac..ea16cf5bf4 100644 --- a/src/libvirt_private.syms +++ b/src/libvirt_private.syms @@ -710,6 +710,7 @@ virStoragePoolObjUnlock; virStoragePoolSourceAdapterTypeTypeFromString; virStoragePoolSourceAdapterTypeTypeToString; virStoragePoolSourceClear; +virStoragePoolSourceDeviceClear; virStoragePoolSourceFindDuplicate; virStoragePoolSourceFindDuplicateDevices; virStoragePoolSourceFree; -- GitLab