Skip to content

Commit c381cfb

Browse files
properly move on request callback through chain of calls
1 parent 6428d8a commit c381cfb

File tree

2 files changed

+4
-4
lines changed

2 files changed

+4
-4
lines changed

src/Node.ipp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ ServiceServer Node::create_service_server(CanardMicrosecond const tx_timeout_use
8686
static_assert(T_REQ::_traits_::HasFixedPortID, "T_REQ does not have a fixed port id.");
8787
static_assert(T_RSP::_traits_::HasFixedPortID, "T_RSP does not have a fixed port id.");
8888

89-
return create_service_server<T_REQ, T_RSP>(T_REQ::_traits_::FixedPortId, tx_timeout_usec, on_request_cb, tid_timeout_usec);
89+
return create_service_server<T_REQ, T_RSP>(T_REQ::_traits_::FixedPortId, tx_timeout_usec, std::move(on_request_cb), tid_timeout_usec);
9090
}
9191

9292
template <typename T_REQ, typename T_RSP, typename OnRequestCb>
@@ -102,7 +102,7 @@ ServiceServer Node::create_service_server(CanardPortID const request_port_id, Ca
102102
*this,
103103
request_port_id,
104104
tx_timeout_usec,
105-
std::forward<OnRequestCb>(on_request_cb)
105+
std::move(on_request_cb)
106106
);
107107

108108
int8_t const rc = canardRxSubscribe(&_canard_hdl,

src/ServiceServer.hpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,11 +33,11 @@ template<typename T_REQ, typename T_RSP, typename OnRequestCb>
3333
class ServiceServer final : public ServiceServerBase
3434
{
3535
public:
36-
ServiceServer(Node & node_hdl, CanardPortID const request_port_id, CanardMicrosecond const tx_timeout_usec, OnRequestCb on_request_cb)
36+
ServiceServer(Node & node_hdl, CanardPortID const request_port_id, CanardMicrosecond const tx_timeout_usec, OnRequestCb&& on_request_cb)
3737
: _node_hdl{node_hdl}
3838
, _request_port_id{request_port_id}
3939
, _tx_timeout_usec{tx_timeout_usec}
40-
, _on_request_cb{on_request_cb}
40+
, _on_request_cb{std::move(on_request_cb)}
4141
{ }
4242
virtual ~ServiceServer();
4343

0 commit comments

Comments
 (0)