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

Commit 812f76ae authored by Shuzhen Wang's avatar Shuzhen Wang Committed by Automerger Merge Worker
Browse files

Merge "Camera: Fix null pointer exception in CameraServiceProxyWrapper" into udc-dev am: 218db79e

parents b40c761d 218db79e
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -2374,6 +2374,9 @@ bool Camera3Device::reconfigureCamera(const CameraMetadata& sessionParams, int c
            //present streams end up with outstanding buffers that will
            //not get drained.
            internalUpdateStatusLocked(STATUS_ACTIVE);

            mCameraServiceProxyWrapper->logStreamConfigured(mId, mOperatingMode,
                    true /*internalReconfig*/, ns2ms(systemTime() - startTime));
        } else if (rc == DEAD_OBJECT) {
            // DEAD_OBJECT can be returned if either the consumer surface is
            // abandoned, or the HAL has died.
@@ -2389,9 +2392,6 @@ bool Camera3Device::reconfigureCamera(const CameraMetadata& sessionParams, int c
        ALOGE("%s: Failed to pause streaming: %d", __FUNCTION__, rc);
    }

    mCameraServiceProxyWrapper->logStreamConfigured(mId, mOperatingMode, true /*internalReconfig*/,
        ns2ms(systemTime() - startTime));

    if (markClientActive) {
        mStatusTracker->markComponentActive(clientStatusId);
    }
+9 −10
Original line number Diff line number Diff line
@@ -243,12 +243,12 @@ void CameraServiceProxyWrapper::logStreamConfigured(const String8& id,
    std::shared_ptr<CameraSessionStatsWrapper> sessionStats;
    {
        Mutex::Autolock l(mLock);
        sessionStats = mSessionStatsMap[id];
        if (sessionStats == nullptr) {
        if (mSessionStatsMap.count(id) == 0) {
            ALOGE("%s: SessionStatsMap should contain camera %s",
                    __FUNCTION__, id.c_str());
            return;
        }
        sessionStats = mSessionStatsMap[id];
    }

    ALOGV("%s: id %s, operatingMode %d, internalConfig %d, latencyMs %d",
@@ -260,12 +260,12 @@ void CameraServiceProxyWrapper::logActive(const String8& id, float maxPreviewFps
    std::shared_ptr<CameraSessionStatsWrapper> sessionStats;
    {
        Mutex::Autolock l(mLock);
        sessionStats = mSessionStatsMap[id];
        if (sessionStats == nullptr) {
        if (mSessionStatsMap.count(id) == 0) {
            ALOGE("%s: SessionStatsMap should contain camera %s when logActive is called",
                    __FUNCTION__, id.c_str());
            return;
        }
        sessionStats = mSessionStatsMap[id];
    }

    ALOGV("%s: id %s", __FUNCTION__, id.c_str());
@@ -280,14 +280,13 @@ void CameraServiceProxyWrapper::logIdle(const String8& id,
    std::shared_ptr<CameraSessionStatsWrapper> sessionStats;
    {
        Mutex::Autolock l(mLock);
        sessionStats = mSessionStatsMap[id];
    }

    if (sessionStats == nullptr) {
        if (mSessionStatsMap.count(id) == 0) {
            ALOGE("%s: SessionStatsMap should contain camera %s when logIdle is called",
                __FUNCTION__, id.c_str());
            return;
        }
        sessionStats = mSessionStatsMap[id];
    }

    ALOGV("%s: id %s, requestCount %" PRId64 ", resultErrorCount %" PRId64 ", deviceError %d"
            ", userTag %s, videoStabilizationMode %d", __FUNCTION__, id.c_str(), requestCount,