diff --git a/src/event/ServerSocket.cxx b/src/event/ServerSocket.cxx index 25e1e81ba..d3abb124a 100644 --- a/src/event/ServerSocket.cxx +++ b/src/event/ServerSocket.cxx @@ -265,20 +265,12 @@ ServerSocket::Close() noexcept i.Close(); } +template ServerSocket::OneServerSocket & -ServerSocket::AddAddress(SocketAddress address) noexcept +ServerSocket::AddAddress(A &&address) noexcept { sockets.emplace_back(loop, *this, next_serial, - address); - - return sockets.back(); -} - -ServerSocket::OneServerSocket & -ServerSocket::AddAddress(AllocatedSocketAddress &&address) noexcept -{ - sockets.emplace_back(loop, *this, next_serial, - std::move(address)); + std::forward(address)); return sockets.back(); } diff --git a/src/event/ServerSocket.hxx b/src/event/ServerSocket.hxx index 8d8c2aaee..3cb0ad422 100644 --- a/src/event/ServerSocket.hxx +++ b/src/event/ServerSocket.hxx @@ -49,8 +49,8 @@ public: } private: - OneServerSocket &AddAddress(SocketAddress address) noexcept; - OneServerSocket &AddAddress(AllocatedSocketAddress &&address) noexcept; + template + OneServerSocket &AddAddress(A &&address) noexcept; /** * Add a listener on a port on all IPv4 interfaces.