1 From c769c9238ad62178f506038178714a1c35aa2769 Mon Sep 17 00:00:00 2001
2 From: Stefan Floeren <42731906+stefan-floeren@users.noreply.github.com>
3 Date: Tue, 16 Apr 2019 08:38:01 +0200
4 Subject: [PATCH] Replace make_shared with new in some cases
6 Replace make_shared for asio types that take a lib::ref as a parameter.
7 This should fix the ASIO change (boostorg/asio@59066d8) for 1.70,
8 while keeping it backwards compatible to older boost versions.
10 websocketpp/transport/asio/connection.hpp | 7 ++++---
11 websocketpp/transport/asio/endpoint.hpp | 3 +--
12 websocketpp/transport/asio/security/none.hpp | 3 +--
13 websocketpp/transport/asio/security/tls.hpp | 3 +--
14 4 files changed, 7 insertions(+), 9 deletions(-)
16 diff --git a/websocketpp/transport/asio/connection.hpp b/websocketpp/transport/asio/connection.hpp
17 index 60f88a79..1ccda8f3 100644
18 --- a/websocketpp/transport/asio/connection.hpp
19 +++ b/websocketpp/transport/asio/connection.hpp
20 @@ -311,9 +311,10 @@ class connection : public config::socket_type::socket_con_type {
23 timer_ptr set_timer(long duration, timer_handler callback) {
24 - timer_ptr new_timer = lib::make_shared<lib::asio::steady_timer>(
25 - lib::ref(*m_io_service),
26 - lib::asio::milliseconds(duration)
27 + timer_ptr new_timer(
28 + new lib::asio::steady_timer(
30 + lib::asio::milliseconds(duration))
33 if (config::enable_multithreading) {
34 diff --git a/websocketpp/transport/asio/endpoint.hpp b/websocketpp/transport/asio/endpoint.hpp
35 index ddab2c74..4b719a97 100644
36 --- a/websocketpp/transport/asio/endpoint.hpp
37 +++ b/websocketpp/transport/asio/endpoint.hpp
38 @@ -195,8 +195,7 @@ class endpoint : public config::socket_type {
41 m_external_io_service = true;
42 - m_acceptor = lib::make_shared<lib::asio::ip::tcp::acceptor>(
43 - lib::ref(*m_io_service));
44 + m_acceptor.reset(new lib::asio::ip::tcp::acceptor(*m_io_service));
47 ec = lib::error_code();
48 diff --git a/websocketpp/transport/asio/security/none.hpp b/websocketpp/transport/asio/security/none.hpp
49 index 5c8293db..6c7d3524 100644
50 --- a/websocketpp/transport/asio/security/none.hpp
51 +++ b/websocketpp/transport/asio/security/none.hpp
52 @@ -168,8 +168,7 @@ class connection : public lib::enable_shared_from_this<connection> {
53 return socket::make_error_code(socket::error::invalid_state);
56 - m_socket = lib::make_shared<lib::asio::ip::tcp::socket>(
57 - lib::ref(*service));
58 + m_socket.reset(new lib::asio::ip::tcp::socket(*service));
60 if (m_socket_init_handler) {
61 m_socket_init_handler(m_hdl, *m_socket);
62 diff --git a/websocketpp/transport/asio/security/tls.hpp b/websocketpp/transport/asio/security/tls.hpp
63 index c76fd9aa..04ac3790 100644
64 --- a/websocketpp/transport/asio/security/tls.hpp
65 +++ b/websocketpp/transport/asio/security/tls.hpp
66 @@ -193,8 +193,7 @@ class connection : public lib::enable_shared_from_this<connection> {
68 return socket::make_error_code(socket::error::invalid_tls_context);
70 - m_socket = lib::make_shared<socket_type>(
71 - _WEBSOCKETPP_REF(*service),lib::ref(*m_context));
72 + m_socket.reset(new socket_type(*service, *m_context));
74 if (m_socket_init_handler) {
75 m_socket_init_handler(m_hdl, get_socket());