[Bug 1055] New: State machine signalling on an operation causes multiple transitions
S Roderick <[email protected]> Thu, 13 Mar 2014 11:50:06 +0100
| Newsgroups | gmane.science.robotics.orocos.devel |
|---|---|
| Message-ID | <[email protected]/> |
http://bugs.orocos.org/show_bug.cgi?id=1055
Summary: State machine signalling on an operation causes
multiple transitions
Product: Toolchain
Version: master
Platform: All
OS/Version: GNU/Linux
Status: NEW
Severity: major
Priority: P3
Component: RTT
AssignedTo: [email protected]
ReportedBy: [email protected]
CC: [email protected]
Estimated Hours: 0.0
Created attachment 868
--> http://bugs.orocos.org/attachment.cgi?id=868
Expands state machine unit test
Emitting v_event() in the following, while in STATE1, causes a transition to
FINI. So v_event() has been taken in both STATE1 and STATE2, even though only
one signal occurred.
string prog = string("StateMachine X {\n")
+ " initial state INIT {\n"
+ " transitions { select STATE1 }\n"
+ " }\n"
+ " state STATE1 {\n"
+ " transition v_event() select STATE2\n" // test signal transition
+ " }\n"
+ " state STATE2 {\n"
+ " transition v_event() select FINI\n" // test signal transition
+ " }\n"
+ " final state FINI {} \n"
+ "}\n"
+ "RootMachine X x()\n";
Patch containing failing unit test attached.
Linking CXX executable state_test
Running 16 test cases...
~/orocos_ws/src/orocos_toolchain/rtt/tests/state_test.cpp(822): error in
"testStateOperationSignalTransition2": check "STATE2" ==
sm->getCurrentStateName() failed [STATE2 != FINI]
~/orocos_ws/src/orocos_toolchain/rtt/tests/state_test.cpp(826): error in
"testStateOperationSignalTransition2": check "STATE2" ==
sm->getCurrentStateName() failed [STATE2 != FINI]
Demonstrated in Linux Mint 15.
--
Configure bugmail: http://bugs.orocos.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
You are the assignee for the bug.
--
Orocos-Dev mailing list
[email protected]
http://lists.mech.kuleuven.be/mailman/listinfo/orocos-dev