Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r60723 - trunk/boost/asio/detail
From: chris_at_[hidden]
Date: 2010-03-19 19:58:49


Author: chris_kohlhoff
Date: 2010-03-19 19:58:48 EDT (Fri, 19 Mar 2010)
New Revision: 60723
URL: http://svn.boost.org/trac/boost/changeset/60723

Log:
Fix cancellation.

Text files modified:
   trunk/boost/asio/detail/win_iocp_socket_service.hpp | 16 ++++++++--------
   1 files changed, 8 insertions(+), 8 deletions(-)

Modified: trunk/boost/asio/detail/win_iocp_socket_service.hpp
==============================================================================
--- trunk/boost/asio/detail/win_iocp_socket_service.hpp (original)
+++ trunk/boost/asio/detail/win_iocp_socket_service.hpp 2010-03-19 19:58:48 EDT (Fri, 19 Mar 2010)
@@ -1693,7 +1693,7 @@
       std::size_t buffer_count, socket_base::message_flags flags,
       bool noop, operation* op)
   {
- update_cancellation_thread_id();
+ update_cancellation_thread_id(impl);
     iocp_service_.work_started();
 
     if (noop)
@@ -1720,7 +1720,7 @@
       std::size_t buffer_count, const endpoint_type& destination,
       socket_base::message_flags flags, operation* op)
   {
- update_cancellation_thread_id();
+ update_cancellation_thread_id(impl);
     iocp_service_.work_started();
 
     if (!is_open(impl))
@@ -1746,7 +1746,7 @@
       std::size_t buffer_count, socket_base::message_flags flags,
       bool noop, operation* op)
   {
- update_cancellation_thread_id();
+ update_cancellation_thread_id(impl);
     iocp_service_.work_started();
 
     if (noop)
@@ -1776,7 +1776,7 @@
       std::size_t buffer_count, endpoint_type& sender_endpoint,
       socket_base::message_flags flags, int* endpoint_size, operation* op)
   {
- update_cancellation_thread_id();
+ update_cancellation_thread_id(impl);
     iocp_service_.work_started();
 
     if (!is_open(impl))
@@ -1803,7 +1803,7 @@
       bool peer_is_open, socket_holder& new_socket,
       void* output_buffer, DWORD address_length, operation* op)
   {
- update_cancellation_thread_id();
+ update_cancellation_thread_id(impl);
     iocp_service_.work_started();
 
     if (!is_open(impl))
@@ -1835,7 +1835,7 @@
   void start_reactor_op(implementation_type& impl, int op_type, reactor_op* op)
   {
     reactor& r = get_reactor();
- update_cancellation_thread_id();
+ update_cancellation_thread_id(impl);
 
     if (is_open(impl))
     {
@@ -1853,7 +1853,7 @@
       reactor_op* op, const endpoint_type& peer_endpoint)
   {
     reactor& r = get_reactor();
- update_cancellation_thread_id();
+ update_cancellation_thread_id(impl);
 
     if (is_open(impl))
     {
@@ -1927,7 +1927,7 @@
   }
 
   // Update the ID of the thread from which cancellation is safe.
- void update_cancellation_thread_id()
+ void update_cancellation_thread_id(implementation_type& impl)
   {
 #if defined(BOOST_ASIO_ENABLE_CANCELIO)
     if (impl.safe_cancellation_thread_id_ == 0)


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