Re: [Boost-bugs] [Boost C++ Libraries] #9280: handling deferred events

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #9280: handling deferred events
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2013-11-18 22:14:25


#9280: handling deferred events
---------------------------------------+----------------------
  Reporter: Dmitry Banschikov <me@…> | Owner: chenry
      Type: Bugs | Status: assigned
 Milestone: To Be Determined | Component: msm
   Version: Boost Development Trunk | Severity: Problem
Resolution: | Keywords:
---------------------------------------+----------------------
Changes (by chenry):

 * status: new => assigned

Comment:

 Correct, this is a bug, precisely, entering the submachine does not check
 for waiting deferred events.
 This would be solved by adding inside do_entry inside state_machine.hpp:

 handle_defer_helper<library_sm> defer_helper(m_deferred_events_queue);
 defer_helper.do_post_handle_deferred(HANDLED_TRUE);

 before : process_message_queue(this);

 This will have for effect that MSM will process
 ev_async_send_cmd_with_reply(1) when entering, and
 ev_async_send_cmd_with_reply(2) will be the last displayed text.

 But frankly, after seeing this, I'm unsure whether it's a great idea to
 keep deferred events while leaving the submachine, I need to think about
 it.

 To check if it solves your problem, I committed this fix in trunk rev.
 86759.

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/9280#comment:1>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:14 UTC