From 4afa53a8bb6b02c07db8c54362311c21444a3ced Mon Sep 17 00:00:00 2001 From: dec05eba Date: Wed, 30 Nov 2022 01:40:50 +0100 Subject: Matrix: remove upload limit check if server returns error, allow @ in username in login but remove it --- src/QuickMedia.cpp | 6 +++++- src/plugins/Matrix.cpp | 9 ++------- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/src/QuickMedia.cpp b/src/QuickMedia.cpp index 92eb03c..57b6162 100644 --- a/src/QuickMedia.cpp +++ b/src/QuickMedia.cpp @@ -5277,7 +5277,11 @@ namespace QuickMedia { homeserver = "https://" + homeserver; std::string err_msg; - if(matrix->login(login_inputs->inputs[0]->get_text(), login_inputs->inputs[1]->get_text(), homeserver, err_msg) == PluginResult::OK) { + std::string username = login_inputs->inputs[0]->get_text(); + size_t at_index = username.find('@'); + if(at_index != std::string::npos) + username.erase(username.begin() + at_index, username.end()); + if(matrix->login(username, login_inputs->inputs[1]->get_text(), homeserver, err_msg) == PluginResult::OK) { login_finish(); return PluginResult::OK; } else { diff --git a/src/plugins/Matrix.cpp b/src/plugins/Matrix.cpp index 2452548..688e16e 100644 --- a/src/plugins/Matrix.cpp +++ b/src/plugins/Matrix.cpp @@ -4877,13 +4877,8 @@ namespace QuickMedia { filename = file_get_filename(filepath); int64_t upload_limit; - PluginResult config_result = get_config(&upload_limit); - if(config_result != PluginResult::OK) { - err_msg = "Failed to get file size limit from server"; - return config_result; - } - - if(file_analyzer.get_file_size() > upload_limit) { + PluginResult config_result = get_config(&upload_limit); // get_config can fail sometimes??? happened on plan9.rocks, why? is /r0/config optional? + if(config_result == PluginResult::OK && file_analyzer.get_file_size() > upload_limit) { err_msg = "File is too large! max upload size on your homeserver is " + std::to_string((double)upload_limit / 1024.0 / 1024.0) + " mb, the file you tried to upload is " + std::to_string((double)file_analyzer.get_file_size() / 1024.0 / 1024.0) + " mb"; return PluginResult::ERR; } -- cgit v1.2.3