On 09/18/2012 04:57 AM, Ján Tomko wrote:
The path was freed before printing the error message, resulting in:
error : virSysinfoRead:773 : internal error Failed to execute command
(null)
---
src/util/sysinfo.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
While this fixes the bug, it is still a less the useful error.
virCommandRun() already gives a better error message and we are
overriding it. I'd prefer:
diff --git i/src/util/sysinfo.c w/src/util/sysinfo.c
index 92c3539..7f0a45b 100644
--- i/src/util/sysinfo.c
+++ w/src/util/sysinfo.c
@@ -767,12 +767,8 @@ virSysinfoRead(void) {
cmd = virCommandNewArgList(path, "-q", "-t",
"0,1,4,17", NULL);
VIR_FREE(path);
virCommandSetOutputBuffer(cmd, &outbuf);
- if (virCommandRun(cmd, NULL) < 0) {
- virReportError(VIR_ERR_INTERNAL_ERROR,
- _("Failed to execute command %s"),
- path);
+ if (virCommandRun(cmd, NULL) < 0)
goto cleanup;
- }
if (VIR_ALLOC(ret) < 0)
goto no_memory;
--
Eric Blake eblake(a)redhat.com +1-919-301-3266
Libvirt virtualization library
http://libvirt.org