diff --git a/VERSION b/VERSION index 1c599fb3..0b0cca32 100644 --- a/VERSION +++ b/VERSION @@ -1,4 +1,4 @@ -SORA_CPP_SDK_VERSION=2023.6.0 +SORA_CPP_SDK_VERSION=2023.7.1 WEBRTC_BUILD_VERSION=m114.5735.2.0 BOOST_VERSION=1.82.0 LYRA_VERSION=1.3.0 diff --git a/src/sora_connection.cpp b/src/sora_connection.cpp index 8c679d75..93606b9b 100644 --- a/src/sora_connection.cpp +++ b/src/sora_connection.cpp @@ -61,14 +61,7 @@ void SoraConnection::Disconnect() { if (thread_) { // Disconnect の中で OnDisconnect が呼ばれるので GIL をリリースする nb::gil_scoped_release release; - if (conn_->GetPeerConnection() != nullptr) { - // 切断済みではない場合は切断する - // - // TODO(sile): ioc_ が別スレッドで動作している関係上、上のチェックでは完璧ではなくレースコンディションが存在するはず - // レースコンディションを完全になくすためには C++ SDK 側での対応が必要なものと思われる - // (e.g., 切断済みの場合に conn_->Disconnect() が呼ばれた場合には単に無視する仕様にする、など) - conn_->Disconnect(); - } + conn_->Disconnect(); thread_->join(); thread_ = nullptr; }