[rtems-central commit] transitionmap: Fix pre-condition summary

Sebastian Huber sebh at rtems.org
Wed Sep 15 06:02:35 UTC 2021


Module:    rtems-central
Branch:    master
Commit:    2d4c4a235e9c630b415f60e26ff35cee3582a0ef
Changeset: http://git.rtems.org/rtems-central/commit/?id=2d4c4a235e9c630b415f60e26ff35cee3582a0ef

Author:    Sebastian Huber <sebastian.huber at embedded-brains.de>
Date:      Thu Sep  9 10:43:06 2021 +0200

transitionmap: Fix pre-condition summary

---

 rtemsspec/transitionmap.py | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/rtemsspec/transitionmap.py b/rtemsspec/transitionmap.py
index 703395c..7801ad4 100644
--- a/rtemsspec/transitionmap.py
+++ b/rtemsspec/transitionmap.py
@@ -467,6 +467,11 @@ class TransitionMap:
             variant = self._map_post_cond(map_idx, co_idx, variant)
         return variant
 
+    def _update_pre_co_summary(self, variant: Transition) -> None:
+        self.pre_co_summary = tuple(
+            a + b for a, b in zip(self.pre_co_summary, (variant.skip, ) +
+                                  variant.pre_cond_na))
+
     def _add_variant(self, transition_map: _TransitionMap, map_idx: int,
                      variant: Transition) -> None:
         if transition_map[map_idx]:
@@ -479,6 +484,7 @@ class TransitionMap:
                         # some pre-conditions.  It makes it also easier to skip
                         # pre-conditon states which are controlled by build
                         # options.
+                        self._update_pre_co_summary(variant)
                         transition_map[map_idx].replace(index, variant)
                         return
                     raise ValueError(
@@ -499,9 +505,7 @@ class TransitionMap:
                 f"{self._item.spec} is the first variant for "
                 f"{{{self._map_index_to_pre_conditions(map_idx)}}} "
                 "and it is not enabled by default")
-        self.pre_co_summary = tuple(
-            a + b for a, b in zip(self.pre_co_summary, (variant.skip, ) +
-                                  variant.pre_cond_na))
+        self._update_pre_co_summary(variant)
         transition_map[map_idx].add(variant)
 
     def _add_transitions(self, transition_map: _TransitionMap,



More information about the vc mailing list