From 5cb8419206febe96a6e8d02ff1cff526d81edbf7 Mon Sep 17 00:00:00 2001 From: Alex Baker Date: Wed, 13 Sep 2023 01:03:42 -0500 Subject: [PATCH] Fix network call on main thread --- .../auth/MicrosoftAuthenticationActivity.kt | 28 +++++++++---------- 1 file changed, 13 insertions(+), 15 deletions(-) diff --git a/app/src/main/java/org/tasks/auth/MicrosoftAuthenticationActivity.kt b/app/src/main/java/org/tasks/auth/MicrosoftAuthenticationActivity.kt index 5e40f5bbc..8272414e1 100644 --- a/app/src/main/java/org/tasks/auth/MicrosoftAuthenticationActivity.kt +++ b/app/src/main/java/org/tasks/auth/MicrosoftAuthenticationActivity.kt @@ -116,28 +116,26 @@ class MicrosoftAuthenticationActivity : ComponentActivity() { } } - private suspend fun getEmail(accessToken: String?): String? { + private suspend fun getEmail(accessToken: String?): String? = withContext(Dispatchers.IO) { if (accessToken == null) { - return null + return@withContext null } val discovery = AuthorizationServiceDiscovery( JSONObject( intent.getStringExtra(EXTRA_SERVICE_DISCOVERY)!! ) ) - val userInfo = withContext(Dispatchers.IO) { - httpClientFactory - .newClient(foreground = false) - .newCall( - Request.Builder() - .url(discovery.userinfoEndpoint!!.toString()) - .addHeader("Authorization", "Bearer $accessToken") - .build() - ) - .execute() - } - val response = userInfo.body?.string() ?: return null - return JSONObject(response).getString("email") + val userInfo = httpClientFactory + .newClient(foreground = false) + .newCall( + Request.Builder() + .url(discovery.userinfoEndpoint!!.toString()) + .addHeader("Authorization", "Bearer $accessToken") + .build() + ) + .execute() + val response = userInfo.body?.string() ?: return@withContext null + JSONObject(response).getString("email") } private fun error(message: String) {