On Thu, Jun 02, 2011 at 05:07:54PM -0600, Eric Blake wrote:
Spotted by Coverity. Only possible on an OOM condition, so
unlikely to bite in the wild.
* daemon/libvirtd.c (qemudSetLogging): Don't leak memory.
---
daemon/libvirtd.c | 4 +++-
1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/daemon/libvirtd.c b/daemon/libvirtd.c
index aec81cf..728031f 100644
--- a/daemon/libvirtd.c
+++ b/daemon/libvirtd.c
@@ -2779,8 +2779,10 @@ qemudSetLogging(struct qemud_server *server, virConfPtr conf,
goto free_and_fail;
if (virAsprintf(&tmp, "%d:file:%s/.libvirt/libvirtd.log",
- virLogGetDefaultPriority(), userdir) == -1)
+ virLogGetDefaultPriority(), userdir) == -1) {
+ VIR_FREE(userdir);
goto out_of_memory;
+ }
}
} else {
if (virAsprintf(&tmp, "%d:stderr", virLogGetDefaultPriority())
< 0)
ACK, userdir is defined only on the local scope, so that's the best way
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/