[fix] fix intermittent crash on incoming connection by guarding shared connection status state across threads

This commit is contained in:
dijunkun
2026-06-26 17:21:09 +08:00
parent b41630ebb4
commit d843901550
8 changed files with 129 additions and 69 deletions
+2 -2
View File
@@ -7,7 +7,7 @@ namespace crossdesk {
void Render::DrawConnectionStatusText(
std::shared_ptr<SubStreamWindowProperties>& props) {
std::string text;
switch (props->connection_status_) {
switch (props->connection_status_.load()) {
case ConnectionStatus::Disconnected:
text = localization::p2p_disconnected[localization_language_index_];
break;
@@ -34,7 +34,7 @@ void Render::DrawConnectionStatusText(
void Render::DrawReceivingScreenText(
std::shared_ptr<SubStreamWindowProperties>& props) {
if (!props->connection_established_ ||
props->connection_status_ != ConnectionStatus::Connected) {
props->connection_status_.load() != ConnectionStatus::Connected) {
return;
}