summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--service/java/com/android/server/wifi/WifiStateMachine.java12
1 files changed, 12 insertions, 0 deletions
diff --git a/service/java/com/android/server/wifi/WifiStateMachine.java b/service/java/com/android/server/wifi/WifiStateMachine.java
index 0e39ce9ae..ac240f066 100644
--- a/service/java/com/android/server/wifi/WifiStateMachine.java
+++ b/service/java/com/android/server/wifi/WifiStateMachine.java
@@ -1021,6 +1021,18 @@ public class WifiStateMachine extends StateMachine implements WifiNative.WifiRss
setLogRecSize(NUM_LOG_RECS_NORMAL);
setLogOnlyTransitions(false);
+ // Clean up existing interfaces in wificond.
+ // This ensures that wificond continue to work if java framework restarts.
+ try {
+ mWificond = mWifiInjector.makeWificond();
+ if (mWificond != null) {
+ mWificond.tearDownInterfaces();
+ }
+ } catch (RemoteException e) {
+ // There is very little we can do here
+ Log.e(TAG, "Failed to tear down interfaces via wificond");
+ }
+
//start the state machine
start();