Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r75641 - trunk/boost/msm/back
From: christophe.j.henry_at_[hidden]
Date: 2011-11-23 15:39:29


Author: chenry
Date: 2011-11-23 15:39:28 EST (Wed, 23 Nov 2011)
New Revision: 75641
URL: http://svn.boost.org/trac/boost/changeset/75641

Log:
bugfix (processing continues after deferring)
Text files modified:
   trunk/boost/msm/back/dispatch_table.hpp | 2 +-
   trunk/boost/msm/back/favor_compile_time.hpp | 2 +-
   2 files changed, 2 insertions(+), 2 deletions(-)

Modified: trunk/boost/msm/back/dispatch_table.hpp
==============================================================================
--- trunk/boost/msm/back/dispatch_table.hpp (original)
+++ trunk/boost/msm/back/dispatch_table.hpp 2011-11-23 15:39:28 EST (Wed, 23 Nov 2011)
@@ -70,7 +70,7 @@
                  // try the first guard
                  typedef typename ::boost::mpl::front<Sequence>::type first_row;
                  HandledEnum res = first_row::execute(fsm,region_index,state,evt);
- if (HANDLED_TRUE!=res)
+ if (HANDLED_TRUE!=res && HANDLED_DEFERRED!=res)
                  {
                     // if the first rejected, move on to the next one
                     HandledEnum sub_res =

Modified: trunk/boost/msm/back/favor_compile_time.hpp
==============================================================================
--- trunk/boost/msm/back/favor_compile_time.hpp (original)
+++ trunk/boost/msm/back/favor_compile_time.hpp 2011-11-23 15:39:28 EST (Wed, 23 Nov 2011)
@@ -93,7 +93,7 @@
         {
             HandledEnum res = HANDLED_FALSE;
             typename std::deque<cell>::const_iterator it = one_state.begin();
- while (it != one_state.end() && res != HANDLED_TRUE)
+ while (it != one_state.end() && (res != HANDLED_TRUE && res != HANDLED_DEFERRED ))
             {
                 HandledEnum handled = (*it)(fsm,region,state,evt);
                 // reject is considered as erasing an error (HANDLED_FALSE)


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk