mirror of
				https://github.com/PabloMK7/citra.git
				synced 2025-10-31 05:40:04 +00:00 
			
		
		
		
	Merge pull request #3602 from lioncash/json
verify_login: Make VerifyLogin exceptionless
This commit is contained in:
		
						commit
						c57b0767af
					
				
					 1 changed files with 11 additions and 7 deletions
				
			
		|  | @ -12,15 +12,19 @@ std::future<bool> VerifyLogin(std::string& username, std::string& token, | |||
|                               const std::string& endpoint_url, std::function<void()> func) { | ||||
|     auto get_func = [func, username](const std::string& reply) -> bool { | ||||
|         func(); | ||||
|         if (reply.empty()) | ||||
| 
 | ||||
|         if (reply.empty()) { | ||||
|             return false; | ||||
|         nlohmann::json json = nlohmann::json::parse(reply); | ||||
|         std::string result; | ||||
|         try { | ||||
|             result = json["username"]; | ||||
|         } catch (const nlohmann::detail::out_of_range&) { | ||||
|         } | ||||
|         return result == username; | ||||
| 
 | ||||
|         nlohmann::json json = nlohmann::json::parse(reply); | ||||
|         const auto iter = json.find("username"); | ||||
| 
 | ||||
|         if (iter == json.end()) { | ||||
|             return username.empty(); | ||||
|         } | ||||
| 
 | ||||
|         return username == *iter; | ||||
|     }; | ||||
|     return GetJson<bool>(get_func, endpoint_url, false, username, token); | ||||
| } | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue