diff options
| -rw-r--r-- | wifi/java/android/net/wifi/WifiManager.java | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/wifi/java/android/net/wifi/WifiManager.java b/wifi/java/android/net/wifi/WifiManager.java index 2aed2de064f2..70e5160711b0 100644 --- a/wifi/java/android/net/wifi/WifiManager.java +++ b/wifi/java/android/net/wifi/WifiManager.java @@ -2563,6 +2563,7 @@ public class WifiManager { private final CloseGuard mCloseGuard = CloseGuard.get(); private final WifiConfiguration mConfig; + private boolean mClosed = false; /** @hide */ @VisibleForTesting @@ -2578,8 +2579,13 @@ public class WifiManager { @Override public void close() { try { - stopLocalOnlyHotspot(); - mCloseGuard.close(); + synchronized (mLock) { + if (!mClosed) { + mClosed = true; + stopLocalOnlyHotspot(); + mCloseGuard.close(); + } + } } catch (Exception e) { Log.e(TAG, "Failed to stop Local Only Hotspot."); } |