diff options
author | rlm <rlm@techsat.com> | 2020-04-27 10:59:06 (GMT) |
---|---|---|
committer | rlm <rlm@techsat.com> | 2020-04-27 10:59:06 (GMT) |
commit | 1e1c00d8170ecfc5d870f6ff159ac6a856f10fd6 (patch) | |
tree | bfe3ce7b03e694d71fd22564f96125763d723bd0 | |
parent | 8c0380c36810ae06b6f5696dadbc87fda541dc5c (diff) | |
download | uscxml-1e1c00d8170ecfc5d870f6ff159ac6a856f10fd6.zip uscxml-1e1c00d8170ecfc5d870f6ff159ac6a856f10fd6.tar.gz uscxml-1e1c00d8170ecfc5d870f6ff159ac6a856f10fd6.tar.bz2 |
:Jira: ADSVHTNG-1165 - fixed exit of state machine on done event of inner parallel state
Change-Id: I3744c95a322746d07fe47fcc345b3f26b685a4b2
-rwxr-xr-x | src/uscxml/transform/ChartToC.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/uscxml/transform/ChartToC.cpp b/src/uscxml/transform/ChartToC.cpp index 710260f..2216eed 100755 --- a/src/uscxml/transform/ChartToC.cpp +++ b/src/uscxml/transform/ChartToC.cpp @@ -2698,7 +2698,7 @@ void ChartToC::writeFSM(std::ostream& stream) { stream << " /* handle final states */" << std::endl; stream << " if unlikely(USCXML_STATE_MASK(USCXML_GET_STATE(i).type) == USCXML_STATE_FINAL) {" << std::endl; - stream << " if unlikely(USCXML_GET_STATE(i).ancestors[0] == 0x01) {" << std::endl; + stream << " if unlikely((USCXML_GET_STATE(i).ancestors[0] == 0x01) && (USCXML_GET_STATE(i).parent == 0)) {" << std::endl; stream << " ctx->flags |= USCXML_CTX_TOP_LEVEL_FINAL;" << std::endl; stream << " } else {" << std::endl; stream << " /* raise done event */" << std::endl; |