From c70c45631370a92e63c9f1ff15d7d55e4528b5f7 Mon Sep 17 00:00:00 2001 From: Pierre Nicolas <pierre.nicolas@savoirfairelinux.com> Date: Wed, 18 Oct 2023 11:45:38 -0400 Subject: [PATCH] call: prevent initIncoming action flow to crash First shot to prevent it to crash. GitLab: #1405 Change-Id: I0e495e2ca34aa3eccf2827862dc0da6d4aa0f849 --- .../java/cx/ring/fragments/CallFragment.kt | 27 ++++++++++--------- 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/jami-android/app/src/main/java/cx/ring/fragments/CallFragment.kt b/jami-android/app/src/main/java/cx/ring/fragments/CallFragment.kt index f450a37ca..f16c86bba 100644 --- a/jami-android/app/src/main/java/cx/ring/fragments/CallFragment.kt +++ b/jami-android/app/src/main/java/cx/ring/fragments/CallFragment.kt @@ -885,29 +885,32 @@ class CallFragment : BaseSupportFragment<CallPresenter, CallView>(), CallView, if(callMediaHandlers == null) callMediaHandlers = PluginUtils.getInstalledPlugins(binding.pluginslistContainer.context) pluginsAdapter = PluginsAdapter( - callMediaHandlers!!, - object : PluginsAdapter.PluginListItemListener { - override fun onPluginItemClicked(pluginDetails: PluginDetails) { - } + mList = callMediaHandlers!!, + listener = object : PluginsAdapter.PluginListItemListener { + override fun onPluginItemClicked(pluginDetails: PluginDetails) {} + override fun onPluginEnabled(pluginDetails: PluginDetails) { pluginDetails.isRunning = !pluginDetails.isRunning - if(!isChoosePluginMode) { + if (!isChoosePluginMode) { presenter.startPlugin(pluginDetails.handlerId!!) isChoosePluginMode = true } else { if (pluginDetails.isRunning) { presenter.toggleCallMediaHandler(pluginDetails.handlerId!!, true) - } - else { + } else { presenter.toggleCallMediaHandler(pluginDetails.handlerId!!, false) - for(handler in callMediaHandlers!!) if (handler.isRunning) break else { - presenter.stopPlugin() - isChoosePluginMode = false - } + for (handler in callMediaHandlers!!) + if (handler.isRunning) break + else { + presenter.stopPlugin() + isChoosePluginMode = false + } } } } - }, participantInfo[0].call?.account) + }, + accountId = if (participantInfo.isNotEmpty()) participantInfo[0].call?.account else null + ) binding.pluginslistContainer.adapter = pluginsAdapter } -- GitLab