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

Commit 66a56726 authored by Ján Sebechlebský's avatar Ján Sebechlebský Committed by Automerger Merge Worker
Browse files

Merge "Do not share VirtualDeviceImpl lock with SensorController" into udc-dev...

Merge "Do not share VirtualDeviceImpl lock with SensorController" into udc-dev am: d3924d0e am: f086d786 am: ea336955 am: 1a2e6252

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/23084057



Change-Id: Id4eb9605e4fecfe7bccc6252d9753d2779f6a9d8
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 385619d0 1a2e6252
Loading
Loading
Loading
Loading
+4 −5
Original line number Diff line number Diff line
@@ -53,19 +53,18 @@ public class SensorController {

    private static AtomicInteger sNextDirectChannelHandle = new AtomicInteger(1);

    private final Object mLock;
    private final Object mLock = new Object();
    private final int mVirtualDeviceId;
    @GuardedBy("mLock")
    private final Map<IBinder, SensorDescriptor> mSensorDescriptors = new ArrayMap<>();
    private final ArrayMap<IBinder, SensorDescriptor> mSensorDescriptors = new ArrayMap<>();

    @NonNull
    private final SensorManagerInternal.RuntimeSensorCallback mRuntimeSensorCallback;
    private final SensorManagerInternal mSensorManagerInternal;
    private final VirtualDeviceManagerInternal mVdmInternal;

    public SensorController(@NonNull Object lock, int virtualDeviceId,
    public SensorController(int virtualDeviceId,
            @Nullable IVirtualSensorCallback virtualSensorCallback) {
        mLock = lock;
        mVirtualDeviceId = virtualDeviceId;
        mRuntimeSensorCallback = new RuntimeSensorCallbackWrapper(virtualSensorCallback);
        mSensorManagerInternal = LocalServices.getService(SensorManagerInternal.class);
@@ -185,7 +184,7 @@ public class SensorController {
    @VisibleForTesting
    Map<IBinder, SensorDescriptor> getSensorDescriptors() {
        synchronized (mLock) {
            return mSensorDescriptors;
            return new ArrayMap<>(mSensorDescriptors);
        }
    }

+1 −2
Original line number Diff line number Diff line
@@ -267,8 +267,7 @@ final class VirtualDeviceImpl extends IVirtualDevice.Stub
            mInputController = inputController;
        }
        if (sensorController == null) {
            mSensorController = new SensorController(
                    mVirtualDeviceLock, mDeviceId, mParams.getVirtualSensorCallback());
            mSensorController = new SensorController(mDeviceId, mParams.getVirtualSensorCallback());
        } else {
            mSensorController = sensorController;
        }
+1 −2
Original line number Diff line number Diff line
@@ -70,8 +70,7 @@ public class SensorControllerTest {
        LocalServices.removeServiceForTest(SensorManagerInternal.class);
        LocalServices.addService(SensorManagerInternal.class, mSensorManagerInternalMock);

        mSensorController =
                new SensorController(new Object(), VIRTUAL_DEVICE_ID, mVirtualSensorCallback);
        mSensorController = new SensorController(VIRTUAL_DEVICE_ID, mVirtualSensorCallback);
        mSensorEvent = new VirtualSensorEvent.Builder(new float[] { 1f, 2f, 3f}).build();
        mVirtualSensorConfig =
                new VirtualSensorConfig.Builder(Sensor.TYPE_ACCELEROMETER, VIRTUAL_SENSOR_NAME)
+1 −2
Original line number Diff line number Diff line
@@ -359,8 +359,7 @@ public class VirtualDeviceManagerServiceTest {
        mInputController = new InputController(mNativeWrapperMock,
                new Handler(TestableLooper.get(this).getLooper()),
                mContext.getSystemService(WindowManager.class), threadVerifier);
        mSensorController =
                new SensorController(new Object(), VIRTUAL_DEVICE_ID_1, mVirtualSensorCallback);
        mSensorController = new SensorController(VIRTUAL_DEVICE_ID_1, mVirtualSensorCallback);
        mCameraAccessController =
                new CameraAccessController(mContext, mLocalService, mCameraAccessBlockedCallback);