https://bugzilla.redhat.com/show_bug.cgi?id=
1092882
Refactoring in commit id '
0c2305b3' resulted in the wrong storage
volume object being passed to the new storageVolDeleteInternal().
It should have passed 'voldef' which is the address found in the
pool->volumes.objs[i] array. By passing 'voldef', the DeleteInternal
code will find and remove the voldef from the volumes.objs[] list.
voldef->building = 0;
pool->asyncjobs--;
- voldef = NULL;
-
if (buildret < 0) {
- storageVolDeleteInternal(volobj, backend, pool, buildvoldef,
+ VIR_FREE(buildvoldef);
+ storageVolDeleteInternal(volobj, backend, pool, voldef,
0, false);
- buildvoldef = NULL;
+ voldef = NULL;
goto cleanup;
}