[PATCH 6/9] Don't base StorageSpoke.ready on storage execute thread presence. (#861574)
David Lehman
dlehman at redhat.com
Thu Oct 4 14:47:16 UTC 2012
---
pyanaconda/ui/gui/spokes/storage.py | 11 ++++++++---
1 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/pyanaconda/ui/gui/spokes/storage.py b/pyanaconda/ui/gui/spokes/storage.py
index bdecc7c..a55eb52 100644
--- a/pyanaconda/ui/gui/spokes/storage.py
+++ b/pyanaconda/ui/gui/spokes/storage.py
@@ -329,11 +329,14 @@ class StorageSpoke(NormalSpoke, StorageChecker):
target=self._doExecute))
def _doExecute(self):
+ self._ready = False
+ communication.send_not_ready(self.__class__.__name__)
+ communication.send_message(self.__class__.__name__,
+ _("Saving storage configuration..."))
try:
doKickstartStorage(self.storage, self.data, self.instclass)
except StorageError as e:
log.error("storage configuration failed: %s" % e)
- communication.send_not_ready(self.__class__.__name__)
communication.send_message(self.__class__.__name__,
_("Failed to save storage configuration..."))
self.data.clearpart.type = CLEARPART_TYPE_NONE
@@ -341,11 +344,13 @@ class StorageSpoke(NormalSpoke, StorageChecker):
self.storage.config.update(self.data)
self.storage.autoPartType = self.data.clearpart.type
self.storage.reset()
- communication.send_ready(self.__class__.__name__)
else:
if self.autopart:
# this was already run as part of doAutoPartition. dumb.
self.run()
+ finally:
+ self._ready = True
+ communication.send_ready(self.__class__.__name__)
@property
def completed(self):
@@ -357,7 +362,7 @@ class StorageSpoke(NormalSpoke, StorageChecker):
def ready(self):
# By default, the storage spoke is not ready. We have to wait until
# storageInitialize is done.
- return self._ready and not threadMgr.get("AnaExecuteStorageThread")
+ return self._ready
@property
def status(self):
--
1.7.7.6
More information about the anaconda-patches
mailing list