[libvirt] [PATCH] virsh: fix missing return value

Alex Jia ajia at redhat.com
Mon Aug 27 06:07:29 UTC 2012


Although virsh command raises a correct error information, the command status
returns 0(true), this patch is used for fixing this issue.

Signed-off-by: Alex Jia <ajia at redhat.com>
---
 tools/virsh-host.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/tools/virsh-host.c b/tools/virsh-host.c
index da60895..2f3b413 100644
--- a/tools/virsh-host.c
+++ b/tools/virsh-host.c
@@ -701,11 +701,13 @@ cmdQemuAgentCommand(vshControl *ctl, const vshCmd *cmd)
     judge = vshCommandOptInt(cmd, "timeout", &timeout);
     if (judge < 0) {
         vshError(ctl, "%s", _("timeout number has to be a number"));
+        goto cleanup;
     } else if (judge > 0) {
         judge = 1;
     }
     if (judge && timeout < 1) {
         vshError(ctl, "%s", _("timeout must be positive"));
+        goto cleanup;
     }
 
     if (vshCommandOptBool(cmd, "async")) {
@@ -719,6 +721,7 @@ cmdQemuAgentCommand(vshControl *ctl, const vshCmd *cmd)
 
     if (judge > 1) {
         vshError(ctl, "%s", _("timeout, async and block options are exclusive"));
+        goto cleanup;
     }
     result = virDomainQemuAgentCommand(dom, guest_agent_cmd, timeout, flags);
 
-- 
1.7.1




More information about the libvir-list mailing list