]> xenbits.xensource.com Git - libvirt.git/commitdiff
vmware: os x support is broken
authorDenis Kondratenko <denis.kondratenko@gmail.com>
Fri, 3 Jan 2014 17:57:37 +0000 (19:57 +0200)
committerEric Blake <eblake@redhat.com>
Fri, 3 Jan 2014 18:13:43 +0000 (11:13 -0700)
https://bugzilla.redhat.com/show_bug.cgi?id=1036248

Incorrect usage of virAsprintf.  vmware-vmx reports version
information to stderr, at least for OS X 10.9.1.

Signed-off-by: Eric Blake <eblake@redhat.com>
src/vmware/vmware_conf.c

index 027e245bf54c9c3f999f233f3370f9d57fff30d3..c96bd624f4083db7ec5e1a2570bc14e097bf9382 100644 (file)
@@ -1,6 +1,6 @@
 /*---------------------------------------------------------------------------*/
 /*
- * Copyright (C) 2011-2012 Red Hat, Inc.
+ * Copyright (C) 2011-2014 Red Hat, Inc.
  * Copyright 2010, diateam (www.diateam.net)
  *
  * This library is free software; you can redistribute it and/or
@@ -271,28 +271,29 @@ vmwareExtractVersion(struct vmware_driver *driver)
 
     switch (driver->type) {
         case VMWARE_DRIVER_PLAYER:
-            if (virAsprintf(&bin, "%s/%s", vmwarePath, "vmplayer"))
+            if (virAsprintf(&bin, "%s/%s", vmwarePath, "vmplayer") < 0)
                 goto cleanup;
             break;
 
         case VMWARE_DRIVER_WORKSTATION:
-            if (virAsprintf(&bin, "%s/%s", vmwarePath, "vmware"))
+            if (virAsprintf(&bin, "%s/%s", vmwarePath, "vmware") < 0)
                 goto cleanup;
             break;
 
         case VMWARE_DRIVER_FUSION:
-            if (virAsprintf(&bin, "%s/%s", vmwarePath, "vmware-vmx"))
+            if (virAsprintf(&bin, "%s/%s", vmwarePath, "vmware-vmx") < 0)
                 goto cleanup;
             break;
 
         default:
             virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
-                       _("invalid driver type for version detection"));
+                           _("invalid driver type for version detection"));
             goto cleanup;
     }
 
     cmd = virCommandNewArgList(bin, "-v", NULL);
     virCommandSetOutputBuffer(cmd, &outbuf);
+    virCommandSetErrorBuffer(cmd, &outbuf);
 
     if (virCommandRun(cmd, NULL) < 0)
         goto cleanup;