Regression introduced by commit
258e06c85b7, "ret" could be set to 1
or 0 by virStorageBackendFileSystemIsMounted before goto cleanup.
This could mislead the callers (up to the public API
virStoragePoolDestroy) to return success even the underlying umount
command fails.
virStorageBackendFileSystemUnmount(virStoragePoolObjPtr pool) {
virCommandPtr cmd = NULL;
int ret = -1;
+ int rc;
if (pool->def->type == VIR_STORAGE_POOL_NETFS) {
if (pool->def->source.nhost != 1) {
}
/* Short-circuit if already unmounted */
- if ((ret = virStorageBackendFileSystemIsMounted(pool)) != 1) {
- if (ret < 0)
- return -1;
- else
- return 0;
- }
+ if ((rc = virStorageBackendFileSystemIsMounted(pool)) != 1)
+ return rc;
cmd = virCommandNewArgList(UMOUNT,
pool->def->target.path,