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

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

 



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

_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/anaconda-devel-list


[Index of Archives]     [Kickstart]     [Fedora Users]     [Fedora Legacy List]     [Fedora Maintainers]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]
  Powered by Linux