diff options
author | 2024-03-06 02:08:41 +0000 | |
---|---|---|
committer | 2024-03-06 02:08:41 +0000 | |
commit | e9945067e0f11c8420ab35e5469a5018b975a99a (patch) | |
tree | 3c991b06ef7c0c943200f08854f8a8cdc0c0a96c /wifi | |
parent | 19181a03a74dcd04686ba0f5228c2bba01190187 (diff) | |
parent | a1168029bf07465f1678845c946532d2c21186a8 (diff) |
Merge "Catch NullPointer caused by race of setting mWifiCond" into main
Diffstat (limited to 'wifi')
-rw-r--r-- | wifi/java/src/android/net/wifi/nl80211/WifiNl80211Manager.java | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/wifi/java/src/android/net/wifi/nl80211/WifiNl80211Manager.java b/wifi/java/src/android/net/wifi/nl80211/WifiNl80211Manager.java index 58638e8e1af4..45ab9863ff73 100644 --- a/wifi/java/src/android/net/wifi/nl80211/WifiNl80211Manager.java +++ b/wifi/java/src/android/net/wifi/nl80211/WifiNl80211Manager.java @@ -718,6 +718,9 @@ public class WifiNl80211Manager { } catch (RemoteException e1) { Log.e(TAG, "Failed to get IClientInterface due to remote exception"); return false; + } catch (NullPointerException e2) { + Log.e(TAG, "setupInterfaceForClientMode NullPointerException"); + return false; } if (clientInterface == null) { @@ -785,6 +788,9 @@ public class WifiNl80211Manager { } catch (RemoteException e1) { Log.e(TAG, "Failed to teardown client interface due to remote exception"); return false; + } catch (NullPointerException e2) { + Log.e(TAG, "tearDownClientInterface NullPointerException"); + return false; } if (!success) { Log.e(TAG, "Failed to teardown client interface"); @@ -816,6 +822,9 @@ public class WifiNl80211Manager { } catch (RemoteException e1) { Log.e(TAG, "Failed to get IApInterface due to remote exception"); return false; + } catch (NullPointerException e2) { + Log.e(TAG, "setupInterfaceForSoftApMode NullPointerException"); + return false; } if (apInterface == null) { @@ -854,6 +863,9 @@ public class WifiNl80211Manager { } catch (RemoteException e1) { Log.e(TAG, "Failed to teardown AP interface due to remote exception"); return false; + } catch (NullPointerException e2) { + Log.e(TAG, "tearDownSoftApInterface NullPointerException"); + return false; } if (!success) { Log.e(TAG, "Failed to teardown AP interface"); @@ -1328,6 +1340,8 @@ public class WifiNl80211Manager { } } catch (RemoteException e1) { Log.e(TAG, "Failed to request getChannelsForBand due to remote exception"); + } catch (NullPointerException e2) { + Log.e(TAG, "getChannelsMhzForBand NullPointerException"); } if (result == null) { result = new int[0]; @@ -1352,7 +1366,8 @@ public class WifiNl80211Manager { */ @Nullable public DeviceWiphyCapabilities getDeviceWiphyCapabilities(@NonNull String ifaceName) { if (mWificond == null) { - Log.e(TAG, "getDeviceWiphyCapabilities: mWificond binder is null! Did wificond die?"); + Log.e(TAG, "getDeviceWiphyCapabilities: mWificond binder is null! " + + "Did wificond die?"); return null; } @@ -1360,6 +1375,9 @@ public class WifiNl80211Manager { return mWificond.getDeviceWiphyCapabilities(ifaceName); } catch (RemoteException e) { return null; + } catch (NullPointerException e2) { + Log.e(TAG, "getDeviceWiphyCapabilities NullPointerException"); + return null; } } @@ -1409,6 +1427,8 @@ public class WifiNl80211Manager { Log.i(TAG, "Receive country code change to " + newCountryCode); } catch (RemoteException re) { re.rethrowFromSystemServer(); + } catch (NullPointerException e) { + new RemoteException("Wificond service doesn't exist!").rethrowFromSystemServer(); } } |