Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 68ce540e authored by jonerlin's avatar jonerlin Committed by Joner Lin
Browse files

[DO NOT MERGE] Do not allow Bluetooth enabling during device

shutting down

Bug: 207521630
Test: reboot device in BLE_ON state, check log
Change-Id: I5e68ecd7816a6e636ebb9cef070dd32fbd9bf3c4
parent b20910f9
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -193,6 +193,7 @@ class BluetoothManagerService extends IBluetoothManager.Stub {
    // used inside handler thread
    private boolean mQuietEnable = false;
    private boolean mEnable;
    private boolean mShutdownInProgress = false;

    private static CharSequence timeToLog(long timestamp) {
        return android.text.format.DateFormat.format("MM-dd HH:mm:ss", timestamp);
@@ -464,6 +465,7 @@ class BluetoothManagerService extends IBluetoothManager.Stub {
                }
            } else if (action.equals(Intent.ACTION_SHUTDOWN)) {
                Slog.i(TAG, "Device is shutting down.");
                mShutdownInProgress = true;
                mBluetoothLock.readLock().lock();
                try {
                    mEnable = false;
@@ -1867,6 +1869,11 @@ class BluetoothManagerService extends IBluetoothManager.Stub {
                case MESSAGE_ENABLE:
                    int quietEnable = msg.arg1;
                    int isBle  = msg.arg2;
                    if (mShutdownInProgress) {
                        Slog.i(TAG, "Skip Bluetooth Enable in device shutdown process");
                        break;
                    }

                    if (mHandler.hasMessages(MESSAGE_HANDLE_DISABLE_DELAYED)
                            || mHandler.hasMessages(MESSAGE_HANDLE_ENABLE_DELAYED)) {
                        // We are handling enable or disable right now, wait for it.