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

Commit cfee40e0 authored by Eino-Ville Talvala's avatar Eino-Ville Talvala
Browse files

Camera2: Don't let unlocks happen during recording.

Bug: 7309020
Change-Id: I6e66809b868d2e8f47f71e6f8752b44ec06dfb17
parent 1bf2809d
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -454,9 +454,13 @@ status_t Camera2Client::unlock() {
    ALOGV("%s: Camera %d: Unlock call from pid %d; current client pid %d",
            __FUNCTION__, mCameraId, getCallingPid(), mClientPid);

    // TODO: Check for uninterruptable conditions

    if (mClientPid == getCallingPid()) {
        SharedParameters::Lock l(mParameters);
        if (l.mParameters.state == Parameters::RECORD ||
                l.mParameters.state == Parameters::VIDEO_SNAPSHOT) {
            ALOGD("Not allowed to unlock camera during recording.");
            return INVALID_OPERATION;
        }
        mClientPid = 0;
        mCameraClient.clear();
        mSharedCameraClient.clear();