Correctly handle null p2p group
This commit is contained in:
@@ -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
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user