On Wed, Sep 21, 2011 at 02:22:57PM -0600, Eric Blake wrote:
Detected by Coverity. The only way to get to error_unlink is if
path was successfully assigned, so the if was useless. Meanwhile,
there was a return statement that did not free path.
* src/locking/lock_driver_sanlock.c
(virLockManagerSanlockSetupLockspace): Fix mem-leak, and drop
useless if.
---
src/locking/lock_driver_sanlock.c | 5 ++---
1 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/src/locking/lock_driver_sanlock.c b/src/locking/lock_driver_sanlock.c
index 2d72510..13940f1 100644
--- a/src/locking/lock_driver_sanlock.c
+++ b/src/locking/lock_driver_sanlock.c
@@ -239,7 +239,7 @@ static int virLockManagerSanlockSetupLockspace(void)
virReportSystemError(-rv,
_("Unable to add lockspace %s"),
path);
- return -1;
+ goto error_unlink;
} else {
VIR_DEBUG("Lockspace %s is already registered", path);
}
@@ -250,8 +250,7 @@ static int virLockManagerSanlockSetupLockspace(void)
return 0;
error_unlink:
- if (path)
- unlink(path);
+ unlink(path);
error:
VIR_FORCE_CLOSE(fd);
VIR_FREE(path);
ACK and pushed, thanks !
Daniel
--
Daniel Veillard | libxml Gnome XML XSLT toolkit
http://xmlsoft.org/
daniel(a)veillard.com | Rpmfind RPM search engine
http://rpmfind.net/
http://veillard.com/ | virtualization library
http://libvirt.org/