mirror of
https://github.com/kunkundi/crossdesk.git
synced 2025-10-26 20:25:34 +08:00
[fix] fix leave transmission error when exit program
This commit is contained in:
@@ -181,7 +181,7 @@ int Render::LocalWindow() {
|
|||||||
regenerate_password_ = true;
|
regenerate_password_ = true;
|
||||||
password_inited_ = false;
|
password_inited_ = false;
|
||||||
regenerate_password_start_time_ = ImGui::GetTime();
|
regenerate_password_start_time_ = ImGui::GetTime();
|
||||||
LeaveConnection(peer_);
|
LeaveConnection(peer_, client_id_);
|
||||||
is_create_connection_ = false;
|
is_create_connection_ = false;
|
||||||
}
|
}
|
||||||
if (ImGui::GetTime() - regenerate_password_start_time_ > 0.3f) {
|
if (ImGui::GetTime() - regenerate_password_start_time_ > 0.3f) {
|
||||||
|
|||||||
@@ -87,6 +87,8 @@ int Render::SaveSettingsIntoCacheFile() {
|
|||||||
fwrite(&cd_cache_, sizeof(cd_cache_), 1, cd_cache_file_);
|
fwrite(&cd_cache_, sizeof(cd_cache_), 1, cd_cache_file_);
|
||||||
fclose(cd_cache_file_);
|
fclose(cd_cache_file_);
|
||||||
|
|
||||||
|
LOG_INFO("Save settings into cache file");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -114,6 +116,8 @@ int Render::LoadSettingsIntoCacheFile() {
|
|||||||
(ConfigCenter::VIDEO_ENCODE_FORMAT)video_encode_format_button_value_);
|
(ConfigCenter::VIDEO_ENCODE_FORMAT)video_encode_format_button_value_);
|
||||||
config_center_.SetHardwareVideoCodec(enable_hardware_video_codec_);
|
config_center_.SetHardwareVideoCodec(enable_hardware_video_codec_);
|
||||||
|
|
||||||
|
LOG_INFO("Load settings into cache file");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -492,7 +496,8 @@ int Render::Run() {
|
|||||||
if (streaming_) {
|
if (streaming_) {
|
||||||
LOG_INFO("Return to main interface");
|
LOG_INFO("Return to main interface");
|
||||||
streaming_ = false;
|
streaming_ = false;
|
||||||
LeaveConnection(peer_reserved_ ? peer_reserved_ : peer_);
|
LOG_INFO("[{}] Leave connection [{}]", client_id_, remote_id_);
|
||||||
|
LeaveConnection(peer_reserved_ ? peer_reserved_ : peer_, remote_id_);
|
||||||
rejoin_ = false;
|
rejoin_ = false;
|
||||||
memset(audio_buffer_, 0, 960);
|
memset(audio_buffer_, 0, 960);
|
||||||
connection_established_ = false;
|
connection_established_ = false;
|
||||||
@@ -579,7 +584,8 @@ int Render::Run() {
|
|||||||
|
|
||||||
// Cleanup
|
// Cleanup
|
||||||
if (is_create_connection_) {
|
if (is_create_connection_) {
|
||||||
LeaveConnection(peer_);
|
LOG_INFO("[{}] Leave connection [{}]", client_id_, client_id_);
|
||||||
|
LeaveConnection(peer_, client_id_);
|
||||||
is_client_mode_ = false;
|
is_client_mode_ = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -235,7 +235,7 @@ void Render::NetStatusReport(int TransmissionId, TraversalMode mode,
|
|||||||
const unsigned short send,
|
const unsigned short send,
|
||||||
const unsigned short receive, void *user_data) {
|
const unsigned short receive, void *user_data) {
|
||||||
Render *render = (Render *)user_data;
|
Render *render = (Render *)user_data;
|
||||||
if (TransmissionId != 0) {
|
if (TransmissionId != 0 && 0 == strcmp(render->client_id_, "")) {
|
||||||
std::string client_id = std::to_string(TransmissionId);
|
std::string client_id = std::to_string(TransmissionId);
|
||||||
strncpy(render->client_id_, client_id.c_str(), sizeof(client_id));
|
strncpy(render->client_id_, client_id.c_str(), sizeof(client_id));
|
||||||
render->SaveSettingsIntoCacheFile();
|
render->SaveSettingsIntoCacheFile();
|
||||||
|
|||||||
2
thirdparty/projectx
vendored
2
thirdparty/projectx
vendored
Submodule thirdparty/projectx updated: 8dc96eeb4c...dd8ab05d0f
Reference in New Issue
Block a user