From a55f18929bc5c85a02ffb6cab3fb8785b5120f00 Mon Sep 17 00:00:00 2001 From: Eric Blake Date: Wed, 21 Sep 2011 14:22:57 -0600 Subject: [PATCH] sanlock: fix memory leak 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 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/locking/lock_driver_sanlock.c b/src/locking/lock_driver_sanlock.c index 2d72510013..13940f1d9d 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);