mirror of
https://github.com/mii443/libdatachannel.git
synced 2025-08-25 00:19:21 +00:00
Compare commits
5 Commits
Author | SHA1 | Date | |
---|---|---|---|
c37c88543d | |||
011bfbe46f | |||
de2ac6c0c2 | |||
75619babd7 | |||
fe9a34905b |
@ -1,6 +1,6 @@
|
|||||||
cmake_minimum_required(VERSION 3.7)
|
cmake_minimum_required(VERSION 3.7)
|
||||||
project(libdatachannel
|
project(libdatachannel
|
||||||
VERSION 0.11.3
|
VERSION 0.11.4
|
||||||
LANGUAGES CXX)
|
LANGUAGES CXX)
|
||||||
set(PROJECT_DESCRIPTION "WebRTC Data Channels Library")
|
set(PROJECT_DESCRIPTION "WebRTC Data Channels Library")
|
||||||
|
|
||||||
|
2
deps/usrsctp
vendored
2
deps/usrsctp
vendored
Submodule deps/usrsctp updated: 2e754d5822...07f871bda2
@ -667,6 +667,8 @@ void PeerConnection::forwardMessage(message_ptr message) {
|
|||||||
stream);
|
stream);
|
||||||
channel->onOpen(weak_bind(&PeerConnection::triggerDataChannel, this,
|
channel->onOpen(weak_bind(&PeerConnection::triggerDataChannel, this,
|
||||||
weak_ptr<DataChannel>{channel}));
|
weak_ptr<DataChannel>{channel}));
|
||||||
|
|
||||||
|
std::unique_lock lock(mDataChannelsMutex); // we are going to emplace
|
||||||
mDataChannels.emplace(stream, channel);
|
mDataChannels.emplace(stream, channel);
|
||||||
} else {
|
} else {
|
||||||
// Invalid, close the DataChannel
|
// Invalid, close the DataChannel
|
||||||
|
@ -349,6 +349,10 @@ void SctpTransport::incoming(message_ptr message) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
PLOG_VERBOSE << "Incoming size=" << message->size();
|
PLOG_VERBOSE << "Incoming size=" << message->size();
|
||||||
|
|
||||||
|
// TODO: There seems to be a possible data race between usrsctp_sendv() and usrsctp_conninput()
|
||||||
|
// As a mitigation, lock the send mutex before calling usrsctp_conninput()
|
||||||
|
std::lock_guard lock(mSendMutex);
|
||||||
usrsctp_conninput(this, message->data(), message->size(), 0);
|
usrsctp_conninput(this, message->data(), message->size(), 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user