Modify

Opened 10 years ago

Closed 10 years ago

Last modified 9 years ago

#1820 closed Bugs (fixed)

win_iocp_socket_service::accept() doesn't update error_code

Reported by: Takeshi Mouri <takeshi.mouri.net@…> Owned by: chris_kohlhoff
Milestone: Boost 1.36.0 Component: asio
Version: Boost 1.35.0 Severity: Problem
Keywords: Cc:

Description

In boost/asio/detail/win_iocp_socket_service.cpp,

  template <typename Socket>
  boost::system::error_code accept(implementation_type& impl, Socket& peer,
      endpoint_type* peer_endpoint, boost::system::error_code& ec)
  {
    // ...

    for (;;)
    {
      boost::system::error_code ec;

      // ...

      return ec;
    }
  }

The inner "ec" hides the function parameter "ec". So, this function doesn't set an error code to outer "ec".

Please remove the inner "ec".

Attachments (0)

Change History (3)

comment:1 Changed 10 years ago by chris_kohlhoff

Resolution: fixed
Status: newclosed

(In [44679]) Remove a local variable that was hiding the ec parameter and preventing error codes from being correctly propagated. Fixes #1820.

comment:2 Changed 10 years ago by Eric Niebler

(In [44725]) Merged revisions 44678-44679,44681-44689,44691-44692,44694,44697-44699,44704-44707,44711,44715,44717-44719,44722 via svnmerge from https://svn.boost.org/svn/boost/trunk

........

r44678 | chris_kohlhoff | 2008-04-20 22:43:42 -0700 (Sun, 20 Apr 2008) | 3 lines

Add porthopper example to demonstrate applications that mix synchronous and asynchronous operations.

........

r44679 | chris_kohlhoff | 2008-04-20 22:52:20 -0700 (Sun, 20 Apr 2008) | 3 lines

Remove a local variable that was hiding the ec parameter and preventing error codes from being correctly propagated. Fixes #1820.

........

r44681 | chris_kohlhoff | 2008-04-20 23:14:29 -0700 (Sun, 20 Apr 2008) | 2 lines

Ensure all non-friend related functions are included in the documentation.

........

r44682 | chris_kohlhoff | 2008-04-20 23:15:17 -0700 (Sun, 20 Apr 2008) | 3 lines

Add UNIX domain sockets, POSIX stream-oriented descriptors and Windows stream-oriented handles to the reference documentation.

........

r44683 | chris_kohlhoff | 2008-04-20 23:15:50 -0700 (Sun, 20 Apr 2008) | 2 lines

Regenerate documentation.

........

r44684 | chris_kohlhoff | 2008-04-20 23:20:32 -0700 (Sun, 20 Apr 2008) | 3 lines

Add documentation on the limits of the number of buffers that may be transferred in individual operations.

........

r44685 | chris_kohlhoff | 2008-04-21 00:59:21 -0700 (Mon, 21 Apr 2008) | 3 lines

Add requirements for handle and descriptor services. Add new classes to the quickref index page.

........

r44686 | jhunold | 2008-04-21 01:07:55 -0700 (Mon, 21 Apr 2008) | 2 lines

Remove trailing comma at end of enumerator list (gcc 4.x -pedantic error)

........

r44687 | johnmaddock | 2008-04-21 01:46:18 -0700 (Mon, 21 Apr 2008) | 1 line

Oops fix typo.

........

r44688 | johnmaddock | 2008-04-21 01:47:04 -0700 (Mon, 21 Apr 2008) | 1 line

Fix msvc warnings using new warning suppression header.

........

r44689 | johnmaddock | 2008-04-21 02:19:30 -0700 (Mon, 21 Apr 2008) | 1 line

Added new macro BOOST_NO_TEMPLATED_IOSTREAMS in response to issue #1765.

........

r44691 | speedsnail | 2008-04-21 04:46:03 -0700 (Mon, 21 Apr 2008) | 1 line

removed act-as-jamfile, which gives errors when boost.use-project is not invoked from Jamroot file.

........

r44692 | johnmaddock | 2008-04-21 05:06:02 -0700 (Mon, 21 Apr 2008) | 2 lines

Changed macro BOOST_PARTIAL_SPECIALIZATION_EXPLICIT_ARGS to BOOST_NO_PARTIAL_SPECIALIZATION_DEFAULT_ARGS. Changed <utility> to <boost/config/no_tr1/utility.hpp> in order to prevent cyclic dependencies between Fusion Tuples and TR1.

........

r44694 | johnmaddock | 2008-04-21 06:00:16 -0700 (Mon, 21 Apr 2008) | 2 lines

Merged changes from the Sandbox, and rebuilt the docs. Also added some missing files.

........

r44697 | danieljames | 2008-04-21 08:55:40 -0700 (Mon, 21 Apr 2008) | 1 line

Factor out the code for choosing the bucket count, and which bucket that hash values map to make it easier to experiment with alternative policies.

........

r44698 | anthonyw | 2008-04-21 09:20:31 -0700 (Mon, 21 Apr 2008) | 1 line

added private copy assignment operator and copy constructor to remove warnings

........

r44699 | anthonyw | 2008-04-21 09:22:16 -0700 (Mon, 21 Apr 2008) | 1 line

Revamped condition variable to try and fix swallowed-notify problems (trac issue #1834)

........

r44704 | pdimov | 2008-04-21 14:29:28 -0700 (Mon, 21 Apr 2008) | 1 line

Add ref_fn_test.cpp per #1846.

........

r44705 | pdimov | 2008-04-21 14:42:29 -0700 (Mon, 21 Apr 2008) | 1 line

Fix #1846.

........

r44706 | emildotchevski | 2008-04-21 15:42:54 -0700 (Mon, 21 Apr 2008) | 1 line

Fixed MSVC-specific compile errors when /Za command-line option is used, due to lack of throw() in std::~exception().

........

r44707 | pdimov | 2008-04-21 16:01:51 -0700 (Mon, 21 Apr 2008) | 1 line

Honor BOOST_NO_TEMPLATED_IOSTREAMS.

........

r44711 | daniel_frey | 2008-04-21 23:31:32 -0700 (Mon, 21 Apr 2008) | 1 line

Avoid unneccessary increment/decrement of reference count

........

r44715 | johnmaddock | 2008-04-22 01:34:43 -0700 (Tue, 22 Apr 2008) | 1 line

Added new files.

........

r44717 | dgregor | 2008-04-22 05:24:25 -0700 (Tue, 22 Apr 2008) | 1 line

Resource-constrained shortest paths, from Michael Drexl

........

r44718 | hkaiser | 2008-04-22 07:13:58 -0700 (Tue, 22 Apr 2008) | 2 lines

Spirit: Started to add '#include <boost/config/warning_disable.hpp>' to tests and examples.

........

r44719 | hkaiser | 2008-04-22 08:10:52 -0700 (Tue, 22 Apr 2008) | 1 line

Spirit.Support: Minor change

........

r44722 | hkaiser | 2008-04-22 10:23:21 -0700 (Tue, 22 Apr 2008) | 1 line

Wave: fixed #1843

........

comment:3 Changed 9 years ago by chris_kohlhoff

(In [46533]) Merged from trunk to release branch.

........

r44662 | chris_kohlhoff | 2008-04-21 11:23:42 +1000 (Mon, 21 Apr 2008) | 3 lines

Add ability to disable the uses of the typeid operator by defining BOOST_NO_TYPEID or BOOST_ASIO_NO_TYPEID.

........

r44663 | chris_kohlhoff | 2008-04-21 11:27:48 +1000 (Mon, 21 Apr 2008) | 3 lines

Ensure that timer dispatching responsibility is correctly relinquished when processing leftover interrupts from a previous run invocation.

........

r44665 | chris_kohlhoff | 2008-04-21 11:36:28 +1000 (Mon, 21 Apr 2008) | 3 lines

Enhance example to make it clear that invocation hooking can be used with asynchronous operations.

........

r44666 | chris_kohlhoff | 2008-04-21 11:39:06 +1000 (Mon, 21 Apr 2008) | 3 lines

Improve efficiency of basic_streambuf::consume() by using a single call to gbump() rather than calling sbumpc() in a loop.

........

r44667 | chris_kohlhoff | 2008-04-21 11:41:29 +1000 (Mon, 21 Apr 2008) | 2 lines

Update version number to match release.

........

r44668 | chris_kohlhoff | 2008-04-21 11:42:10 +1000 (Mon, 21 Apr 2008) | 2 lines

Fix infinite recursion in the ssl::stream's shutdown() implementation.

........

r44670 | chris_kohlhoff | 2008-04-21 12:01:34 +1000 (Mon, 21 Apr 2008) | 2 lines

Improve documentation for the protected functions and data in basic_io_object<>.

........

r44673 | chris_kohlhoff | 2008-04-21 14:02:37 +1000 (Mon, 21 Apr 2008) | 4 lines

Add a special null_buffers type that allows read and write operations to be used to indicate the socket's readiness to read or write without blocking.

........

r44674 | chris_kohlhoff | 2008-04-21 14:43:05 +1000 (Mon, 21 Apr 2008) | 2 lines

Add support for UNIX domain sockets.

........

r44675 | chris_kohlhoff | 2008-04-21 15:16:15 +1000 (Mon, 21 Apr 2008) | 2 lines

Add new wrapper classes for stream-oriented file descriptors on POSIX platforms.

........

r44676 | chris_kohlhoff | 2008-04-21 15:32:34 +1000 (Mon, 21 Apr 2008) | 2 lines

Add new wrapper classes for stream-oriented handles on Windows.

........

r44678 | chris_kohlhoff | 2008-04-21 15:43:42 +1000 (Mon, 21 Apr 2008) | 3 lines

Add porthopper example to demonstrate applications that mix synchronous and asynchronous operations.

........

r44679 | chris_kohlhoff | 2008-04-21 15:52:20 +1000 (Mon, 21 Apr 2008) | 3 lines

Remove a local variable that was hiding the ec parameter and preventing error codes from being correctly propagated. Fixes #1820.

........

r44681 | chris_kohlhoff | 2008-04-21 16:14:29 +1000 (Mon, 21 Apr 2008) | 2 lines

Ensure all non-friend related functions are included in the documentation.

........

r44682 | chris_kohlhoff | 2008-04-21 16:15:17 +1000 (Mon, 21 Apr 2008) | 3 lines

Add UNIX domain sockets, POSIX stream-oriented descriptors and Windows stream-oriented handles to the reference documentation.

........

r44683 | chris_kohlhoff | 2008-04-21 16:15:50 +1000 (Mon, 21 Apr 2008) | 2 lines

Regenerate documentation.

........

r44684 | chris_kohlhoff | 2008-04-21 16:20:32 +1000 (Mon, 21 Apr 2008) | 3 lines

Add documentation on the limits of the number of buffers that may be transferred in individual operations.

........

r44685 | chris_kohlhoff | 2008-04-21 17:59:21 +1000 (Mon, 21 Apr 2008) | 3 lines

Add requirements for handle and descriptor services. Add new classes to the quickref index page.

........

r44727 | chris_kohlhoff | 2008-04-23 09:46:15 +1000 (Wed, 23 Apr 2008) | 2 lines

Fix or suppress MSVC level 4 warnings. Fixes #1703.

........

r44848 | chris_kohlhoff | 2008-04-28 23:35:27 +1000 (Mon, 28 Apr 2008) | 2 lines

Update asio version number.

........

r44849 | chris_kohlhoff | 2008-04-28 23:36:18 +1000 (Mon, 28 Apr 2008) | 2 lines

Add raw socket support.

........

r44851 | chris_kohlhoff | 2008-04-28 23:56:07 +1000 (Mon, 28 Apr 2008) | 2 lines

Add an experimental two-lock queue implementation for task_io_service.

........

r44997 | chris_kohlhoff | 2008-05-02 08:00:26 +1000 (Fri, 02 May 2008) | 3 lines

Add a fast path for some speculative read and write operations in the epoll_reactor.

........

r44998 | chris_kohlhoff | 2008-05-02 08:27:21 +1000 (Fri, 02 May 2008) | 3 lines

A memory barrier is needed on some platforms to ensure that all updates to the node occur before the tail pointer is updated.

........

r45006 | chris_kohlhoff | 2008-05-02 17:59:01 +1000 (Fri, 02 May 2008) | 3 lines

Fully qualify uses of asio's placeholders to resolve ambiguity with C++0x's placeholders namespace.

........

r45010 | chris_kohlhoff | 2008-05-02 18:38:15 +1000 (Fri, 02 May 2008) | 3 lines

Don't use the names readv and writev for functions defined inside asio as these names seem to be macros on Tru64.

........

r45059 | chris_kohlhoff | 2008-05-03 21:36:16 +1000 (Sat, 03 May 2008) | 2 lines

Add fast-pathing of speculative reads and writes to the kqueue_reactor.

........

r45122 | chris_kohlhoff | 2008-05-05 16:30:13 +1000 (Mon, 05 May 2008) | 2 lines

Implement custom memory allocation support for reactor-based asynchronous operations.

........

r45179 | chris_kohlhoff | 2008-05-07 08:09:47 +1000 (Wed, 07 May 2008) | 2 lines

Use an atomic counter for strand reference counting.

........

r45292 | chris_kohlhoff | 2008-05-12 18:30:21 +1000 (Mon, 12 May 2008) | 2 lines

Regenerate documentation to include raw socket classes.

........

r45293 | chris_kohlhoff | 2008-05-12 18:35:56 +1000 (Mon, 12 May 2008) | 2 lines

Don't generate enum value lists for empty enums.

........

r45355 | chris_kohlhoff | 2008-05-14 22:17:26 +1000 (Wed, 14 May 2008) | 3 lines

Add check for empty heap when determining the minimum wait duration for a timer queue.

........

r45600 | chris_kohlhoff | 2008-05-21 19:25:12 +1000 (Wed, 21 May 2008) | 2 lines

Implement custom allocation support for timer operations.

........

r45633 | chris_kohlhoff | 2008-05-22 08:56:49 +1000 (Thu, 22 May 2008) | 2 lines

Some Windows platforms don't define IPPROTO_ICMPV6.

........

r45811 | chris_kohlhoff | 2008-05-27 17:54:12 +1000 (Tue, 27 May 2008) | 3 lines

Fix a crash that can occur when destroying a handler object that owns its own memory (as is the case when destroying handlers in an orphaned strand).

........

r45935 | chris_kohlhoff | 2008-05-30 18:39:19 +1000 (Fri, 30 May 2008) | 5 lines

Fix a deadlock that can occur when destroying a thread object with global lifetime in a dynamically loaded DLL on Windows. Note that deadlock can still occur if the thread is launched by the constructor of an object with global lifetime.

........

r46003 | chris_kohlhoff | 2008-06-01 11:31:25 +1000 (Sun, 01 Jun 2008) | 4 lines

Add test for the crash that can occur when destroying a handler object that owns its own memory (as is the case when destroying handlers in an orphaned strand).

........

r46272 | chris_kohlhoff | 2008-06-09 22:54:55 +1000 (Mon, 09 Jun 2008) | 2 lines

Add support for serial ports.

........

r46319 | chris_kohlhoff | 2008-06-11 21:17:53 +1000 (Wed, 11 Jun 2008) | 2 lines

Add random-access handles for use on Windows.

........

r46325 | chris_kohlhoff | 2008-06-11 22:41:48 +1000 (Wed, 11 Jun 2008) | 2 lines

Remove repeated typedef of reactor_type.

........

r46327 | chris_kohlhoff | 2008-06-11 23:07:41 +1000 (Wed, 11 Jun 2008) | 2 lines

Only perform check for a 0-byte receive meaning EOF on SOCK_STREAM sockets.

........

r46415 | chris_kohlhoff | 2008-06-16 10:41:29 +1000 (Mon, 16 Jun 2008) | 2 lines

Add an iterator for bytewise traversal of a buffer sequence.

........

r46473 | chris_kohlhoff | 2008-06-18 21:22:21 +1000 (Wed, 18 Jun 2008) | 2 lines

Fix write_at declaration. Add missing documentation for offset parameters.

........

r46475 | chris_kohlhoff | 2008-06-18 23:03:46 +1000 (Wed, 18 Jun 2008) | 3 lines

Add new overloads for read_until and async_read_until that invoke a user-defined function object to determine when a match has been found.

........

r46476 | chris_kohlhoff | 2008-06-18 23:08:21 +1000 (Wed, 18 Jun 2008) | 2 lines

Regenerate documentation.

........

r46506 | chris_kohlhoff | 2008-06-19 22:41:32 +1000 (Thu, 19 Jun 2008) | 2 lines

Fix for unicode builds.

........

r46507 | chris_kohlhoff | 2008-06-19 22:50:02 +1000 (Thu, 19 Jun 2008) | 3 lines

Fix serial port support on POSIX platforms that don't provide the BSD extensions cfmakeraw, cfsetspeed and CRTSCTS.

........

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain chris_kohlhoff.
The resolution will be deleted.

Add Comment


E-mail address and name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.