Details
-
Bug
-
Resolution: Done
-
P2: Important
-
5.4.1, 5.5.0 Alpha
-
None
-
67d255f18343d74bbc9a0eec460995ca615473be
Description
Event sequence:
- external event that selects a transition
- internal event that does not select a transition
- internal event that does select a transition
In this case, the first internal event is dequeued, checked, and discarded because it does not select any transitions. Instead of pulling the next event from the internal queue, the state machine will dequeue the external event. Only after that is processed, the second internal event is processed.
This behaviour is invalid: the internal queue should be emptied before the external queue.
Attachments
For Gerrit Dashboard: QTBUG-46059 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
112175,3 | QStateMachine: empty the whole internal queue before external queue | 5.5 | qt/qtbase | Status: MERGED | +2 | 0 |