]> xenbits.xensource.com Git - libvirt.git/commitdiff
VBox bug when starting machine from old versions
authorPritesh Kothari <Pritesh.Kothari@Sun.COM>
Mon, 14 Sep 2009 15:37:13 +0000 (17:37 +0200)
committerDaniel Veillard <veillard@redhat.com>
Mon, 14 Sep 2009 15:37:13 +0000 (17:37 +0200)
* src/vbox/vbox_tmpl.c: fix a bug where one can't start domains defined
  with older builds or with empty "FRONTEND/Type" tag in their xml
  files.

src/vbox/vbox_tmpl.c

index 8024243afadd47ea6548d85ff8c87657cdaf1b19..72707106abeae5e07406aaeb51dbed372fa0cb59 100644 (file)
@@ -2850,6 +2850,13 @@ static int vboxDomainCreate(virDomainPtr dom) {
                                 vrdpPresent = 1;
                             }
 
+                            if (!vrdpPresent && !sdlPresent && !guiPresent) {
+                                /* if nothing is selected it means either the machine xml
+                                 * file is really old or some values are missing so fallback
+                                 */
+                                guiPresent = 1;
+                            }
+
                             data->pFuncs->pfnUtf8Free(valueTypeUtf8);
 
                         } else {
@@ -2882,12 +2889,12 @@ static int vboxDomainCreate(virDomainPtr dom) {
                             data->pFuncs->pfnUtf8ToUtf16("vrdp", &sessionType);
                         }
 
-                        data->vboxObj->vtbl->OpenRemoteSession(data->vboxObj,
-                                                               data->vboxSession,
-                                                               iid,
-                                                               sessionType,
-                                                               env,
-                                                               &progress );
+                        rc = data->vboxObj->vtbl->OpenRemoteSession(data->vboxObj,
+                                                                    data->vboxSession,
+                                                                    iid,
+                                                                    sessionType,
+                                                                    env,
+                                                                    &progress );
                         if (NS_FAILED(rc)) {
                             vboxError(dom->conn, VIR_ERR_OPERATION_FAILED,
                                       "%s", "openremotesession failed, domain can't be started");