[libvirt] [PATCH 2/3] storage_backend_fs: Don't free a part of a structure on error
Peter Krempa
pkrempa at redhat.com
Mon Jul 9 13:21:41 UTC 2012
As the storage pool sources are stored in a list of structs, the pointer
returned by virStoragePoolSourceListNewSource() shouldn't be freed as it
points in the middle of a memory block. This combined with a regression
that takes the error path every time on caused a double-free abort on
the src struct in question.
---
src/storage/storage_backend_fs.c | 2 --
1 files changed, 0 insertions(+), 2 deletions(-)
diff --git a/src/storage/storage_backend_fs.c b/src/storage/storage_backend_fs.c
index c736496..5e3da14 100644
--- a/src/storage/storage_backend_fs.c
+++ b/src/storage/storage_backend_fs.c
@@ -218,10 +218,8 @@ virStorageBackendFileSystemNetFindPoolSourcesFunc(virStoragePoolObjPtr pool ATTR
}
src->format = VIR_STORAGE_POOL_NETFS_NFS;
- src = NULL;
ret = 0;
cleanup:
- virStoragePoolSourceFree(src);
return ret;
}
--
1.7.8.6
More information about the libvir-list
mailing list