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

Commit 231f7b67 authored by Shuzhen Wang's avatar Shuzhen Wang
Browse files

Camera: Validate physical setting map in OutputConfiguration.writeParcel

If the physical camera settings map doesn't contain a key for the
logical camera id, throws an exception.

Test: LogicalCameraDeviceTest
Bug: 220730433
Change-Id: I716fa4b81a6e48538aebfac41b96d5d21fdb6a2e
parent 6782f931
Loading
Loading
Loading
Loading
+5 −0
Original line number Original line Diff line number Diff line
@@ -623,6 +623,11 @@ public final class CaptureRequest extends CameraMetadata<CaptureRequest.Key<?>>


    @Override
    @Override
    public void writeToParcel(Parcel dest, int flags) {
    public void writeToParcel(Parcel dest, int flags) {
        if (!mPhysicalCameraSettings.containsKey(mLogicalCameraId)) {
            throw new IllegalStateException("Physical camera settings map must contain a key for "
                    + "the logical camera id.");
        }

        int physicalCameraCount = mPhysicalCameraSettings.size();
        int physicalCameraCount = mPhysicalCameraSettings.size();
        dest.writeInt(physicalCameraCount);
        dest.writeInt(physicalCameraCount);
        //Logical camera id and settings always come first.
        //Logical camera id and settings always come first.