Re-use created disk if retrying a VM install (fixed _again_)

This commit is contained in:
Cole Robinson 2009-07-06 16:49:47 -04:00
parent e0f0b9a930
commit b4a9322839

View File

@ -90,8 +90,8 @@ class vmmCreate(gobject.GObject):
self.detectedDistro = None self.detectedDistro = None
self.detectThreadLock = threading.Lock() self.detectThreadLock = threading.Lock()
# Marker that we have failed an install # 'Guest' class from the previous failed install
self.install_failed = False self.failed_guest = None
self.window.signal_autoconnect({ self.window.signal_autoconnect({
"on_vmm_newcreate_delete_event" : self.close, "on_vmm_newcreate_delete_event" : self.close,
@ -266,7 +266,7 @@ class vmmCreate(gobject.GObject):
def reset_state(self, urihint=None): def reset_state(self, urihint=None):
self.install_failed = False self.failed_guest = None
self.window.get_widget("create-pages").set_current_page(PAGE_NAME) self.window.get_widget("create-pages").set_current_page(PAGE_NAME)
self.page_changed(None, None, PAGE_NAME) self.page_changed(None, None, PAGE_NAME)
@ -826,9 +826,9 @@ class vmmCreate(gobject.GObject):
path = "" path = ""
# Don't generate a new path if the install failed # Don't generate a new path if the install failed
if self.install_failed: if self.failed_guest:
if self.guest and len(self.guest.disks) > 0: if len(self.failed_guest.disks) > 0:
return self.guest.disks[0].path return self.failed_guest.disks[0].path
if not self.usepool: if not self.usepool:
@ -1417,7 +1417,6 @@ class vmmCreate(gobject.GObject):
"".join(traceback.format_exc())) "".join(traceback.format_exc()))
return False return False
logging.debug("Creating a VM %s" % guest.name + logging.debug("Creating a VM %s" % guest.name +
"\n Type: %s,%s" % (guest.type, "\n Type: %s,%s" % (guest.type,
guest.installer.os_type) + guest.installer.os_type) +
@ -1433,7 +1432,7 @@ class vmmCreate(gobject.GObject):
"\n Audio?: %s" % str(self.get_config_sound())) "\n Audio?: %s" % str(self.get_config_sound()))
# Start the install # Start the install
self.install_failed = False self.failed_guest = None
self.topwin.set_sensitive(False) self.topwin.set_sensitive(False)
self.topwin.window.set_cursor(gtk.gdk.Cursor(gtk.gdk.WATCH)) self.topwin.window.set_cursor(gtk.gdk.Cursor(gtk.gdk.WATCH))
@ -1454,7 +1453,7 @@ class vmmCreate(gobject.GObject):
self.topwin.window.set_cursor(gtk.gdk.Cursor(gtk.gdk.TOP_LEFT_ARROW)) self.topwin.window.set_cursor(gtk.gdk.Cursor(gtk.gdk.TOP_LEFT_ARROW))
if error: if error:
self.install_failed = True self.failed_guest = self.guest
return return
# Ensure new VM is loaded # Ensure new VM is loaded