|
@@ -166,7 +166,7 @@ shared_ptr<IceTransport> PeerConnection::initIceTransport() {
|
|
|
|
|
|
std::atomic_store(&mIceTransport, transport);
|
|
|
if (state.load() == State::Closed) {
|
|
|
- mIceTransport.reset();
|
|
|
+ std::atomic_store(&mIceTransport, decltype(mIceTransport)(nullptr));
|
|
|
throw std::runtime_error("Connection is closed");
|
|
|
}
|
|
|
transport->start();
|
|
@@ -241,7 +241,7 @@ shared_ptr<DtlsTransport> PeerConnection::initDtlsTransport() {
|
|
|
|
|
|
std::atomic_store(&mDtlsTransport, transport);
|
|
|
if (state.load() == State::Closed) {
|
|
|
- mDtlsTransport.reset();
|
|
|
+ std::atomic_store(&mDtlsTransport, decltype(mDtlsTransport)(nullptr));
|
|
|
throw std::runtime_error("Connection is closed");
|
|
|
}
|
|
|
transport->start();
|
|
@@ -303,7 +303,7 @@ shared_ptr<SctpTransport> PeerConnection::initSctpTransport() {
|
|
|
|
|
|
std::atomic_store(&mSctpTransport, transport);
|
|
|
if (state.load() == State::Closed) {
|
|
|
- mSctpTransport.reset();
|
|
|
+ std::atomic_store(&mSctpTransport, decltype(mSctpTransport)(nullptr));
|
|
|
throw std::runtime_error("Connection is closed");
|
|
|
}
|
|
|
transport->start();
|