[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

[PATCH 8/8] Make users revisit software spoke after changing base repo.



Invalidate previous depcheck/transaction to ensure the selection has
been validated when we arrive in hub 2.
---
 pyanaconda/packaging/yumpayload.py   |    3 +++
 pyanaconda/ui/gui/spokes/software.py |    5 ++++-
 2 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/pyanaconda/packaging/yumpayload.py b/pyanaconda/packaging/yumpayload.py
index 3211bdd..30189c3 100644
--- a/pyanaconda/packaging/yumpayload.py
+++ b/pyanaconda/packaging/yumpayload.py
@@ -182,6 +182,8 @@ class YumPayload(PackagePayload):
             # we get a base repo set up
             self._yum.preconf.releasever = self._getReleaseVersion(None)
 
+        self.txID = None
+
     def _writeYumConfig(self):
         """ Write out anaconda's main yum configuration file. """
         buf = """
@@ -854,6 +856,7 @@ reposdir=%s
 
     def checkSoftwareSelection(self):
         log.info("checking software selection")
+        self.txID = time.time()
 
         with _yum_lock:
             self.release()
diff --git a/pyanaconda/ui/gui/spokes/software.py b/pyanaconda/ui/gui/spokes/software.py
index 72dd32a..d8b630a 100644
--- a/pyanaconda/ui/gui/spokes/software.py
+++ b/pyanaconda/ui/gui/spokes/software.py
@@ -85,16 +85,19 @@ class SoftwareSelectionSpoke(NormalSpoke):
             self._error = True
             communication.send_message(self.__class__.__name__,
                                        _("Error checking software dependencies"))
+            self._tx_id = None
         else:
             communication.send_ready(self.__class__.__name__)
             self._error = False
+            self._tx_id = self.payload.txID
 
     @property
     def completed(self):
         from pyanaconda.threads import threadMgr
         return self._get_selected_desktop() is not None and \
                not threadMgr.get("AnaCheckSoftwareThread") and \
-               not self._error
+               not self._error and \
+               self.payload.txID and self._tx_id == self.payload.txID
 
     @property
     def ready(self):
-- 
1.7.7.6


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]