From 766f57dc9d893b4ca92c912310e6c9a329ae8606 Mon Sep 17 00:00:00 2001 From: Koen J Date: Sat, 3 May 2025 21:04:39 +0200 Subject: [PATCH] Crashfix. --- .../futo/platformplayer/casting/StateCasting.kt | 14 ++++++++++++-- .../com/futo/platformplayer/states/StateSync.kt | 12 ++++++++++-- 2 files changed, 22 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/com/futo/platformplayer/casting/StateCasting.kt b/app/src/main/java/com/futo/platformplayer/casting/StateCasting.kt index 03145a78..27159131 100644 --- a/app/src/main/java/com/futo/platformplayer/casting/StateCasting.kt +++ b/app/src/main/java/com/futo/platformplayer/casting/StateCasting.kt @@ -45,6 +45,8 @@ import com.futo.platformplayer.logging.Logger import com.futo.platformplayer.models.CastingDeviceInfo import com.futo.platformplayer.parsers.HLS import com.futo.platformplayer.states.StateApp +import com.futo.platformplayer.states.StateSync +import com.futo.platformplayer.states.StateSync.Companion import com.futo.platformplayer.stores.CastingDeviceInfoStorage import com.futo.platformplayer.stores.FragmentedStorage import com.futo.platformplayer.toUrlAddress @@ -228,12 +230,20 @@ class StateCasting { override fun onStartDiscoveryFailed(serviceType: String, errorCode: Int) { Log.e(TAG, "Discovery failed for $serviceType: Error code:$errorCode") - _nsdManager?.stopServiceDiscovery(this) + try { + _nsdManager?.stopServiceDiscovery(this) + } catch (e: Throwable) { + Logger.w(TAG, "Failed to stop service discovery", e) + } } override fun onStopDiscoveryFailed(serviceType: String, errorCode: Int) { Log.e(TAG, "Stop discovery failed for $serviceType: Error code:$errorCode") - _nsdManager?.stopServiceDiscovery(this) + try { + _nsdManager?.stopServiceDiscovery(this) + } catch (e: Throwable) { + Logger.w(TAG, "Failed to stop service discovery", e) + } } override fun onServiceFound(service: NsdServiceInfo) { diff --git a/app/src/main/java/com/futo/platformplayer/states/StateSync.kt b/app/src/main/java/com/futo/platformplayer/states/StateSync.kt index 98c7f8e9..d2ce807d 100644 --- a/app/src/main/java/com/futo/platformplayer/states/StateSync.kt +++ b/app/src/main/java/com/futo/platformplayer/states/StateSync.kt @@ -148,12 +148,20 @@ class StateSync { override fun onStartDiscoveryFailed(serviceType: String, errorCode: Int) { Log.e(TAG, "Discovery failed for $serviceType: Error code:$errorCode") - _nsdManager?.stopServiceDiscovery(this) + try { + _nsdManager?.stopServiceDiscovery(this) + } catch (e: Throwable) { + Logger.w(TAG, "Failed to stop service discovery", e) + } } override fun onStopDiscoveryFailed(serviceType: String, errorCode: Int) { Log.e(TAG, "Stop discovery failed for $serviceType: Error code:$errorCode") - _nsdManager?.stopServiceDiscovery(this) + try { + _nsdManager?.stopServiceDiscovery(this) + } catch (e: Throwable) { + Logger.w(TAG, "Failed to stop service discovery", e) + } } fun addOrUpdate(name: String, adrs: Array, port: Int, attributes: Map) {