[libvirt] [PATCH] storage: Use VIR_DELETE_ELEMENT instead of open coding

Peter Krempa pkrempa at redhat.com
Mon Jan 6 14:04:47 UTC 2014


Replace the open coded array element deletion by our new helper.
---
 src/storage/storage_driver.c | 11 +----------
 1 file changed, 1 insertion(+), 10 deletions(-)

diff --git a/src/storage/storage_driver.c b/src/storage/storage_driver.c
index baba9c9..aaa0f02 100644
--- a/src/storage/storage_driver.c
+++ b/src/storage/storage_driver.c
@@ -1565,17 +1565,8 @@ storageVolDelete(virStorageVolPtr obj,
             VIR_INFO("Deleting volume '%s' from storage pool '%s'",
                      vol->name, pool->def->name);
             virStorageVolDefFree(vol);
-            vol = NULL;
-
-            if (i < (pool->volumes.count - 1))
-                memmove(pool->volumes.objs + i, pool->volumes.objs + i + 1,
-                        sizeof(*(pool->volumes.objs)) * (pool->volumes.count - (i + 1)));
-
-            if (VIR_REALLOC_N(pool->volumes.objs, pool->volumes.count - 1) < 0) {
-                ; /* Failure to reduce memory allocation isn't fatal */
-            }
-            pool->volumes.count--;

+            VIR_DELETE_ELEMENT(pool->volumes.objs, pool->volumes.count, i);
             break;
         }
     }
-- 
1.8.5.2




More information about the libvir-list mailing list