From 2a6395aa1dc9f6a8878a7510b622da3c2f3dd546 Mon Sep 17 00:00:00 2001 From: Martin Kletzander Date: Thu, 9 Jan 2014 16:28:30 +0100 Subject: [PATCH] storage: fix crash when listing volumes or undefining a pool The commit cad3cf9a951d26da9d2ee0f5b52fb1a2dbb74af1 introduced a crash due to wrong order of parameters being passed to the function. When deleting an element, the function decreased the iterator instead of count and if listing volumes after that (or undefining the pool, NULL was being dereferenced. Signed-off-by: Martin Kletzander --- src/storage/storage_driver.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/storage/storage_driver.c b/src/storage/storage_driver.c index aaa0f0286d..85fc0f2522 100644 --- a/src/storage/storage_driver.c +++ b/src/storage/storage_driver.c @@ -1566,7 +1566,7 @@ storageVolDelete(virStorageVolPtr obj, vol->name, pool->def->name); virStorageVolDefFree(vol); - VIR_DELETE_ELEMENT(pool->volumes.objs, pool->volumes.count, i); + VIR_DELETE_ELEMENT(pool->volumes.objs, i, pool->volumes.count); break; } } -- GitLab