Boost C++ Libraries: Ticket #6951: Entry pseudo state and anonymous transition problem https://svn.boost.org/trac10/ticket/6951 <p> <strong>Problem</strong> </p> <p> See fig1. If the event from Entry1 to State2_1 is none, Action1 is invoked unexpectedly. </p> <p> See fig2. If the event from Entry1 to State2_1 is Event1, Action1 is not invoked. </p> <p> My understanding is that Boost.Msm requires the same event for transitions that to entry pseudo state and from entry pseudo state. </p> <p> Consider fig3, it's impossible to place correct event from Entry1 to State3_1. </p> <p> <strong>Solution</strong> </p> <p> In the transition process, outer event(Event1) preserved, and in the final phase of processing transition preserved event is invoked. When the event from entry pseudo state is none, avoid preserving outer event. (fix_pseudo_entry_and_none_event.patch) </p> <p> <strong>Test</strong> </p> <p> I tested my patch and all existing tests. All of them passed successfully. The new test, <a class="missing wiki">PseudoEntry</a>.cpp, is also included in fix_pseudo_entry_and_none_event.patch. </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/6951 Trac 1.4.3 Takatoshi Kondo <redboltz@…> Tue, 29 May 2012 13:53:56 GMT attachment set https://svn.boost.org/trac10/ticket/6951 https://svn.boost.org/trac10/ticket/6951 <ul> <li><strong>attachment</strong> → <span class="trac-field-new">fig1and2.png</span> </li> </ul> Ticket Takatoshi Kondo <redboltz@…> Tue, 29 May 2012 13:54:33 GMT attachment set https://svn.boost.org/trac10/ticket/6951 https://svn.boost.org/trac10/ticket/6951 <ul> <li><strong>attachment</strong> → <span class="trac-field-new">multi_from.png</span> </li> </ul> Ticket Takatoshi Kondo <redboltz@…> Tue, 29 May 2012 13:58:54 GMT attachment set https://svn.boost.org/trac10/ticket/6951 https://svn.boost.org/trac10/ticket/6951 <ul> <li><strong>attachment</strong> → <span class="trac-field-new">fix_pseudo_entry_and_none_event.patch</span> </li> </ul> <p> patch </p> Ticket Takatoshi Kondo <redboltz@…> Tue, 29 May 2012 15:52:13 GMT attachment set https://svn.boost.org/trac10/ticket/6951 https://svn.boost.org/trac10/ticket/6951 <ul> <li><strong>attachment</strong> → <span class="trac-field-new">fig1.cpp</span> </li> </ul> <p> Source code corresponds to fig1. </p> Ticket Christophe Henry Wed, 03 Apr 2013 20:41:51 GMT <link>https://svn.boost.org/trac10/ticket/6951#comment:1 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/6951#comment:1</guid> <description> <p> This should be solved by the any event feature. Ok to close? </p> </description> <category>Ticket</category> </item> <item> <dc:creator>anonymous</dc:creator> <pubDate>Wed, 03 Apr 2013 20:46:17 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/6951#comment:2 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/6951#comment:2</guid> <description> <p> OK. Thanks. </p> </description> <category>Ticket</category> </item> <item> <author>Takatoshi Kondo <redboltz@…></author> <pubDate>Wed, 03 Apr 2013 20:47:14 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/6951#comment:3 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/6951#comment:3</guid> <description> <p> OK. Thanks. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Christophe Henry</dc:creator> <pubDate>Wed, 03 Apr 2013 20:49:56 GMT</pubDate> <title>status, version changed; resolution set https://svn.boost.org/trac10/ticket/6951#comment:4 https://svn.boost.org/trac10/ticket/6951#comment:4 <ul> <li><strong>status</strong> <span class="trac-field-old">new</span> → <span class="trac-field-new">closed</span> </li> <li><strong>version</strong> <span class="trac-field-old">Boost 1.49.0</span> → <span class="trac-field-new">Boost 1.51.0</span> </li> <li><strong>resolution</strong> → <span class="trac-field-new">fixed</span> </li> </ul> <p> Then closed in 1.51. </p> Ticket