From d0df4039c69eda80a7df7d99abe6cd46f39ffeea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim=20Kr=C3=BCger?= Date: Wed, 7 Sep 2022 11:34:59 +0200 Subject: [PATCH] Fix to deeply nested function processHeaderChatLastGiven MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Tim Krüger --- .../talk/controllers/ChatController.kt | 24 ++++++++++++------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/app/src/main/java/com/nextcloud/talk/controllers/ChatController.kt b/app/src/main/java/com/nextcloud/talk/controllers/ChatController.kt index 82c4adf02..5bb943d5c 100644 --- a/app/src/main/java/com/nextcloud/talk/controllers/ChatController.kt +++ b/app/src/main/java/com/nextcloud/talk/controllers/ChatController.kt @@ -2486,17 +2486,23 @@ class ChatController(args: Bundle) : private fun processHeaderChatLastGiven(response: Response<*>, isFromTheFuture: Boolean) { val xChatLastGivenHeader: String? = response.headers()["X-Chat-Last-Given"] - if (response.headers().size > 0 && !TextUtils.isEmpty(xChatLastGivenHeader)) { - val header = Integer.parseInt(xChatLastGivenHeader!!) - if (header > 0) { - if (isFromTheFuture) { + + val header = if (response.headers().size > 0 && + xChatLastGivenHeader?.isNotEmpty() == true + ) { + xChatLastGivenHeader.toInt() + } else { + return + } + + if (header > 0) { + if (isFromTheFuture) { + globalLastKnownFutureMessageId = header + } else { + if (globalLastKnownFutureMessageId == -1) { globalLastKnownFutureMessageId = header - } else { - if (globalLastKnownFutureMessageId == -1) { - globalLastKnownFutureMessageId = header - } - globalLastKnownPastMessageId = header } + globalLastKnownPastMessageId = header } } }