From 4f913cab6377ddda0b5e085a9d481937ea8e445c Mon Sep 17 00:00:00 2001 From: Richard Hodges Date: Thu, 23 Jul 2020 11:10:52 +0200 Subject: [PATCH] Fix portability bug in websocket server sync example fixes #2032 closes #2034 --- CHANGELOG.md | 3 +++ .../websocket/server/sync-ssl/websocket_server_sync_ssl.cpp | 6 +++--- example/websocket/server/sync/websocket_server_sync.cpp | 6 +++--- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4bd36f50..3186ae42 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,6 @@ + +-------------------------------------------------------------------------------- + Version 299: * Fix race in http-crawl example. diff --git a/example/websocket/server/sync-ssl/websocket_server_sync_ssl.cpp b/example/websocket/server/sync-ssl/websocket_server_sync_ssl.cpp index 5a7b4dc0..789b1406 100644 --- a/example/websocket/server/sync-ssl/websocket_server_sync_ssl.cpp +++ b/example/websocket/server/sync-ssl/websocket_server_sync_ssl.cpp @@ -38,7 +38,7 @@ using tcp = boost::asio::ip::tcp; // from // Echoes back all received WebSocket messages void -do_session(tcp::socket& socket, ssl::context& ctx) +do_session(tcp::socket socket, ssl::context& ctx) { try { @@ -123,10 +123,10 @@ int main(int argc, char* argv[]) acceptor.accept(socket); // Launch the session, transferring ownership of the socket - std::thread{std::bind( + std::thread( &do_session, std::move(socket), - std::ref(ctx))}.detach(); + std::ref(ctx)).detach(); } } catch (const std::exception& e) diff --git a/example/websocket/server/sync/websocket_server_sync.cpp b/example/websocket/server/sync/websocket_server_sync.cpp index 2f75c468..74ce6b95 100644 --- a/example/websocket/server/sync/websocket_server_sync.cpp +++ b/example/websocket/server/sync/websocket_server_sync.cpp @@ -32,7 +32,7 @@ using tcp = boost::asio::ip::tcp; // from // Echoes back all received WebSocket messages void -do_session(tcp::socket& socket) +do_session(tcp::socket socket) { try { @@ -108,9 +108,9 @@ int main(int argc, char* argv[]) acceptor.accept(socket); // Launch the session, transferring ownership of the socket - std::thread{std::bind( + std::thread( &do_session, - std::move(socket))}.detach(); + std::move(socket)).detach(); } } catch (const std::exception& e)