From 18712497ecdb74d55fff8d8d214e749c8023075c Mon Sep 17 00:00:00 2001 From: Marcel Hibbe Date: Thu, 4 Jun 2026 17:07:09 +0200 Subject: [PATCH] avoid crash when hangup network calls It will avoid the crash Exception java.lang.RuntimeException: Unable to destroy activity {com.nextcloud.talk2/com.nextcloud.talk.activities.CallActivity}: kotlin.UninitializedPropertyAccessException: lateinit property conversationUser has not been initialized at android.app.ActivityThread.performDestroyActivity (ActivityThread.java:5456) at android.app.ActivityThread.handleDestroyActivity (ActivityThread.java:5493) at android.app.servertransaction.DestroyActivityItem.execute (DestroyActivityItem.java:44) at android.app.servertransaction.TransactionExecutor.executeLifecycleState (TransactionExecutor.java:176) at android.app.servertransaction.TransactionExecutor.execute (TransactionExecutor.java:97) at android.app.ActivityThread$H.handleMessage (ActivityThread.java:2267) at android.os.Handler.dispatchMessage (Handler.java:107) at android.os.Looper.loop (Looper.java:237) at android.app.ActivityThread.main (ActivityThread.java:8167) at java.lang.reflect.Method.invoke at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:496) at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1100) Caused by kotlin.UninitializedPropertyAccessException: lateinit property conversationUser has not been initialized at com.nextcloud.talk.activities.CallActivity.getConversationUser (CallActivity.kt:235) at com.nextcloud.talk.activities.CallActivity.hangupNetworkCalls (CallActivity.kt:1994) at com.nextcloud.talk.activities.CallActivity.hangup (CallActivity.kt:1953) at com.nextcloud.talk.activities.CallActivity.onDestroy (CallActivity.kt:1352) at android.app.Activity.performDestroy (Activity.java:8225) at android.app.Instrumentation.callActivityOnDestroy (Instrumentation.java:1342) at android.app.ActivityThread.performDestroyActivity (ActivityThread.java:5441) However it does not fix a root cause why the user is null Signed-off-by: Marcel Hibbe --- .../java/com/nextcloud/talk/activities/CallActivity.kt | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/app/src/main/java/com/nextcloud/talk/activities/CallActivity.kt b/app/src/main/java/com/nextcloud/talk/activities/CallActivity.kt index 674897ec2f..c6af2d4462 100644 --- a/app/src/main/java/com/nextcloud/talk/activities/CallActivity.kt +++ b/app/src/main/java/com/nextcloud/talk/activities/CallActivity.kt @@ -2037,6 +2037,13 @@ class CallActivity : CallBaseActivity() { private fun hangupNetworkCalls(shutDownView: Boolean, endCallForAll: Boolean) { Log.d(TAG, "hangupNetworkCalls. shutDownView=$shutDownView") + if (!::conversationUser.isInitialized) { + Log.w(TAG, "hangupNetworkCalls: conversationUser not initialized, skipping network calls") + if (shutDownView) { + finish() + } + return + } val apiVersion = ApiUtils.getCallApiVersion(conversationUser, intArrayOf(ApiUtils.API_V4, 1)) if (localStateBroadcaster != null) { localStateBroadcaster!!.destroy()