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

Commit 95dd9990 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Camera: Avoid using invalid frame processor"

parents 8255f43b 7ee731f4
Loading
Loading
Loading
Loading
+9 −7
Original line number Diff line number Diff line
@@ -2004,13 +2004,15 @@ void CameraDeviceClient::detachDevice() {
    nsecs_t startTime = systemTime();
    ALOGV("Camera %s: Stopping processors", mCameraIdStr.string());

    mFrameProcessor->removeListener(camera2::FrameProcessorBase::FRAME_PROCESSOR_LISTENER_MIN_ID,
                                    camera2::FrameProcessorBase::FRAME_PROCESSOR_LISTENER_MAX_ID,
                                    /*listener*/this);
    if (mFrameProcessor.get() != nullptr) {
        mFrameProcessor->removeListener(
                camera2::FrameProcessorBase::FRAME_PROCESSOR_LISTENER_MIN_ID,
                camera2::FrameProcessorBase::FRAME_PROCESSOR_LISTENER_MAX_ID, /*listener*/this);
        mFrameProcessor->requestExit();
        ALOGV("Camera %s: Waiting for threads", mCameraIdStr.string());
        mFrameProcessor->join();
        ALOGV("Camera %s: Disconnecting device", mCameraIdStr.string());
    }

    // WORKAROUND: HAL refuses to disconnect while there's streams in flight
    {