Correctly handle null p2p group

This commit is contained in:
Mygod
2019-08-20 10:20:47 +08:00
parent 4aece2204a
commit b1976403cc

View File

@@ -134,7 +134,7 @@ class RepeaterService : Service(), CoroutineScope, WifiP2pManager.ChannelListene
WifiP2pManager.WIFI_P2P_STATE_DISABLED) launch { cleanLocked() } // ignore P2P enabled WifiP2pManager.WIFI_P2P_STATE_DISABLED) launch { cleanLocked() } // ignore P2P enabled
WifiP2pManager.WIFI_P2P_CONNECTION_CHANGED_ACTION -> onP2pConnectionChanged( WifiP2pManager.WIFI_P2P_CONNECTION_CHANGED_ACTION -> onP2pConnectionChanged(
intent.getParcelableExtra(WifiP2pManager.EXTRA_WIFI_P2P_INFO)!!, intent.getParcelableExtra(WifiP2pManager.EXTRA_WIFI_P2P_INFO)!!,
intent.getParcelableExtra(WifiP2pManager.EXTRA_WIFI_P2P_GROUP) ?: WifiP2pGroup()) intent.getParcelableExtra(WifiP2pManager.EXTRA_WIFI_P2P_GROUP))
} }
} }
@Deprecated("No longer used since API 29") @Deprecated("No longer used since API 29")
@@ -342,10 +342,10 @@ class RepeaterService : Service(), CoroutineScope, WifiP2pManager.ChannelListene
/** /**
* Used during step 2, also called when connection changed * Used during step 2, also called when connection changed
*/ */
private fun onP2pConnectionChanged(info: WifiP2pInfo, group: WifiP2pGroup) = launch { private fun onP2pConnectionChanged(info: WifiP2pInfo, group: WifiP2pGroup?) = launch {
DebugHelper.log(TAG, "P2P connection changed: $info\n$group") DebugHelper.log(TAG, "P2P connection changed: $info\n$group")
when { when {
!info.groupFormed || !info.isGroupOwner || !group.isGroupOwner -> { !info.groupFormed || !info.isGroupOwner || group?.isGroupOwner != true -> {
if (routingManager != null) cleanLocked() if (routingManager != null) cleanLocked()
// P2P shutdown, else other groups changing before start, ignore // P2P shutdown, else other groups changing before start, ignore
} }