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

Commit 40a75dc9 authored by Archie Pusaka's avatar Archie Pusaka Committed by Automerger Merge Worker
Browse files

Merge "Cache the current HidDeviceService to avoid crashes" into main am: dd4b1f87 am: 2b70005a

parents cd01198b 2b70005a
Loading
Loading
Loading
Loading
+8 −13
Original line number Diff line number Diff line
@@ -303,14 +303,6 @@ public class HidDeviceService extends ProfileService {
            mService = service;
        }

        @VisibleForTesting
        HidDeviceService getServiceForTesting() {
            if (mService != null && mService.isAvailable()) {
                return mService;
            }
            return null;
        }

        @Override
        public void cleanup() {
            mService = null;
@@ -318,15 +310,18 @@ public class HidDeviceService extends ProfileService {

        @RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)
        private HidDeviceService getService(AttributionSource source) {
            // Cache mService because it can change while getService is called
            HidDeviceService service = mService;

            if (Utils.isInstrumentationTestMode()) {
                return mService;
                return service;
            }
            if (!Utils.checkServiceAvailable(mService, TAG)
                    || !Utils.checkCallerIsSystemOrActiveOrManagedUser(mService, TAG)
                    || !Utils.checkConnectPermissionForDataDelivery(mService, source, TAG)) {
            if (!Utils.checkServiceAvailable(service, TAG)
                    || !Utils.checkCallerIsSystemOrActiveOrManagedUser(service, TAG)
                    || !Utils.checkConnectPermissionForDataDelivery(service, source, TAG)) {
                return null;
            }
            return mService;
            return service;
        }

        @Override
+0 −1
Original line number Diff line number Diff line
@@ -60,7 +60,6 @@ public class BluetoothHidDeviceBinderTest {
    @Test
    public void cleanup() {
        mBinder.cleanup();
        assertThat(mBinder.getServiceForTesting()).isNull();
    }

    @Test