Commit ab9d9541 authored by Max Kellermann's avatar Max Kellermann

input/tidal: pass std::string by value

Don't keep any references to the owner, as the handler method may delete the owner.
parent c3b85685
...@@ -74,7 +74,7 @@ private: ...@@ -74,7 +74,7 @@ private:
void OnTidalSession() noexcept override; void OnTidalSession() noexcept override;
/* virtual methods from TidalTrackHandler */ /* virtual methods from TidalTrackHandler */
void OnTidalTrackSuccess(std::string &&url) noexcept override; void OnTidalTrackSuccess(std::string url) noexcept override;
void OnTidalTrackError(std::exception_ptr error) noexcept override; void OnTidalTrackError(std::exception_ptr error) noexcept override;
}; };
...@@ -98,7 +98,7 @@ TidalInputStream::OnTidalSession() noexcept ...@@ -98,7 +98,7 @@ TidalInputStream::OnTidalSession() noexcept
} }
void void
TidalInputStream::OnTidalTrackSuccess(std::string &&url) noexcept TidalInputStream::OnTidalTrackSuccess(std::string url) noexcept
{ {
const std::lock_guard<Mutex> protect(mutex); const std::lock_guard<Mutex> protect(mutex);
......
...@@ -38,7 +38,7 @@ class CurlRequest; ...@@ -38,7 +38,7 @@ class CurlRequest;
*/ */
class TidalLoginHandler { class TidalLoginHandler {
public: public:
virtual void OnTidalLoginSuccess(std::string &&session) noexcept = 0; virtual void OnTidalLoginSuccess(std::string session) noexcept = 0;
virtual void OnTidalLoginError(std::exception_ptr error) noexcept = 0; virtual void OnTidalLoginError(std::exception_ptr error) noexcept = 0;
}; };
......
...@@ -70,7 +70,7 @@ TidalSessionManager::AddLoginHandler(TidalSessionHandler &h) noexcept ...@@ -70,7 +70,7 @@ TidalSessionManager::AddLoginHandler(TidalSessionHandler &h) noexcept
} }
void void
TidalSessionManager::OnTidalLoginSuccess(std::string &&_session) noexcept TidalSessionManager::OnTidalLoginSuccess(std::string _session) noexcept
{ {
{ {
const std::lock_guard<Mutex> protect(mutex); const std::lock_guard<Mutex> protect(mutex);
......
...@@ -158,7 +158,7 @@ private: ...@@ -158,7 +158,7 @@ private:
} }
/* virtual methods from TidalLoginHandler */ /* virtual methods from TidalLoginHandler */
void OnTidalLoginSuccess(std::string &&session) noexcept override; void OnTidalLoginSuccess(std::string session) noexcept override;
void OnTidalLoginError(std::exception_ptr error) noexcept override; void OnTidalLoginError(std::exception_ptr error) noexcept override;
}; };
......
...@@ -40,7 +40,7 @@ class TidalTrackHandler ...@@ -40,7 +40,7 @@ class TidalTrackHandler
: public boost::intrusive::list_base_hook<boost::intrusive::link_mode<boost::intrusive::safe_link>> : public boost::intrusive::list_base_hook<boost::intrusive::link_mode<boost::intrusive::safe_link>>
{ {
public: public:
virtual void OnTidalTrackSuccess(std::string &&url) noexcept = 0; virtual void OnTidalTrackSuccess(std::string url) noexcept = 0;
virtual void OnTidalTrackError(std::exception_ptr error) noexcept = 0; virtual void OnTidalTrackError(std::exception_ptr error) noexcept = 0;
}; };
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment