Explorar o código

Fixed synchronization regression in Track::setMediaHandler()

Paul-Louis Ageneau %!s(int64=4) %!d(string=hai) anos
pai
achega
e7a63577bf
Modificáronse 1 ficheiros con 3 adicións e 3 borrados
  1. 3 3
      src/impl/track.cpp

+ 3 - 3
src/impl/track.cpp

@@ -182,11 +182,11 @@ bool Track::transportSend([[maybe_unused]] message_ptr message) {
 void Track::setMediaHandler(shared_ptr<MediaHandler> handler) {
 void Track::setMediaHandler(shared_ptr<MediaHandler> handler) {
 	{
 	{
 		std::unique_lock lock(mMutex);
 		std::unique_lock lock(mMutex);
-		mMediaHandler = std::move(handler);
+		mMediaHandler = handler;
 	}
 	}
 
 
-	if (mMediaHandler)
-		mMediaHandler->onOutgoing(std::bind(&Track::transportSend, this, std::placeholders::_1));
+	if (handler)
+		handler->onOutgoing(std::bind(&Track::transportSend, this, std::placeholders::_1));
 }
 }
 
 
 shared_ptr<MediaHandler> Track::getMediaHandler() {
 shared_ptr<MediaHandler> Track::getMediaHandler() {