Loading media/libmediaplayerservice/nuplayer/GenericSource.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -432,7 +432,7 @@ void NuPlayer::GenericSource::onPrepareAsync() { } if (mDataSource == nullptr) { ALOGD("FileSource local"); mDataSource = new PlayerServiceFileSource(mFd.get(), mOffset, mLength); mDataSource = new PlayerServiceFileSource(dup(mFd.get()), mOffset, mLength); } } Loading services/audiopolicy/service/AudioPolicyService.cpp +7 −5 Original line number Diff line number Diff line Loading @@ -566,11 +566,13 @@ void AudioPolicyService::updateUidStates_l() auto canCaptureIfInCallOrCommunication = [&](const auto &recordClient) REQUIRES(mLock) { bool canCaptureCall = recordClient->canCaptureOutput; bool canCaptureCommunication = recordClient->canCaptureOutput || recordClient->uid == mPhoneStateOwnerUid || isServiceUid(mPhoneStateOwnerUid); return !(isInCall && !canCaptureCall) && !(isInCommunication && !canCaptureCommunication); return !(isInCall && !canCaptureCall); //TODO(b/160260850): restore restriction to mode owner once fix for misbehaving apps is merged // bool canCaptureCommunication = recordClient->canCaptureOutput // || recordClient->uid == mPhoneStateOwnerUid // || isServiceUid(mPhoneStateOwnerUid); // return !(isInCall && !canCaptureCall) // && !(isInCommunication && !canCaptureCommunication); }; // By default allow capture if: Loading services/camera/libcameraservice/api1/Camera2Client.cpp +10 −2 Original line number Diff line number Diff line Loading @@ -1777,6 +1777,14 @@ void Camera2Client::notifyError(int32_t errorCode, case hardware::camera2::ICameraDeviceCallbacks::ERROR_CAMERA_BUFFER: ALOGW("%s: Received recoverable error %d from HAL - ignoring, requestId %" PRId32, __FUNCTION__, errorCode, resultExtras.requestId); if ((hardware::camera2::ICameraDeviceCallbacks::ERROR_CAMERA_REQUEST == errorCode) || (hardware::camera2::ICameraDeviceCallbacks::ERROR_CAMERA_RESULT == errorCode)) { Mutex::Autolock al(mLatestRequestMutex); mLatestFailedRequestId = resultExtras.requestId; mLatestRequestSignal.signal(); } mCaptureSequencer->notifyError(errorCode, resultExtras); return; default: Loading Loading @@ -2303,7 +2311,7 @@ status_t Camera2Client::waitUntilCurrentRequestIdLocked() { status_t Camera2Client::waitUntilRequestIdApplied(int32_t requestId, nsecs_t timeout) { Mutex::Autolock l(mLatestRequestMutex); while (mLatestRequestId != requestId) { while ((mLatestRequestId != requestId) && (mLatestFailedRequestId != requestId)) { nsecs_t startTime = systemTime(); auto res = mLatestRequestSignal.waitRelative(mLatestRequestMutex, timeout); Loading @@ -2312,7 +2320,7 @@ status_t Camera2Client::waitUntilRequestIdApplied(int32_t requestId, nsecs_t tim timeout -= (systemTime() - startTime); } return OK; return (mLatestRequestId == requestId) ? OK : DEAD_OBJECT; } void Camera2Client::notifyRequestId(int32_t requestId) { Loading services/camera/libcameraservice/api1/Camera2Client.h +1 −0 Original line number Diff line number Diff line Loading @@ -237,6 +237,7 @@ private: mutable Mutex mLatestRequestMutex; Condition mLatestRequestSignal; int32_t mLatestRequestId = -1; int32_t mLatestFailedRequestId = -1; status_t waitUntilRequestIdApplied(int32_t requestId, nsecs_t timeout); status_t waitUntilCurrentRequestIdLocked(); }; Loading services/camera/libcameraservice/device3/Camera3Device.cpp +2 −1 Original line number Diff line number Diff line Loading @@ -60,6 +60,7 @@ #include "device3/Camera3SharedOutputStream.h" #include "CameraService.h" #include "utils/CameraThreadState.h" #include "utils/TraceHFR.h" #include <algorithm> #include <tuple> Loading Loading @@ -2834,7 +2835,7 @@ void Camera3Device::onInflightMapFlushedLocked() { } void Camera3Device::removeInFlightMapEntryLocked(int idx) { ATRACE_CALL(); ATRACE_HFR_CALL(); nsecs_t duration = mInFlightMap.valueAt(idx).maxExpectedDuration; mInFlightMap.removeItemsAt(idx, 1); Loading Loading
media/libmediaplayerservice/nuplayer/GenericSource.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -432,7 +432,7 @@ void NuPlayer::GenericSource::onPrepareAsync() { } if (mDataSource == nullptr) { ALOGD("FileSource local"); mDataSource = new PlayerServiceFileSource(mFd.get(), mOffset, mLength); mDataSource = new PlayerServiceFileSource(dup(mFd.get()), mOffset, mLength); } } Loading
services/audiopolicy/service/AudioPolicyService.cpp +7 −5 Original line number Diff line number Diff line Loading @@ -566,11 +566,13 @@ void AudioPolicyService::updateUidStates_l() auto canCaptureIfInCallOrCommunication = [&](const auto &recordClient) REQUIRES(mLock) { bool canCaptureCall = recordClient->canCaptureOutput; bool canCaptureCommunication = recordClient->canCaptureOutput || recordClient->uid == mPhoneStateOwnerUid || isServiceUid(mPhoneStateOwnerUid); return !(isInCall && !canCaptureCall) && !(isInCommunication && !canCaptureCommunication); return !(isInCall && !canCaptureCall); //TODO(b/160260850): restore restriction to mode owner once fix for misbehaving apps is merged // bool canCaptureCommunication = recordClient->canCaptureOutput // || recordClient->uid == mPhoneStateOwnerUid // || isServiceUid(mPhoneStateOwnerUid); // return !(isInCall && !canCaptureCall) // && !(isInCommunication && !canCaptureCommunication); }; // By default allow capture if: Loading
services/camera/libcameraservice/api1/Camera2Client.cpp +10 −2 Original line number Diff line number Diff line Loading @@ -1777,6 +1777,14 @@ void Camera2Client::notifyError(int32_t errorCode, case hardware::camera2::ICameraDeviceCallbacks::ERROR_CAMERA_BUFFER: ALOGW("%s: Received recoverable error %d from HAL - ignoring, requestId %" PRId32, __FUNCTION__, errorCode, resultExtras.requestId); if ((hardware::camera2::ICameraDeviceCallbacks::ERROR_CAMERA_REQUEST == errorCode) || (hardware::camera2::ICameraDeviceCallbacks::ERROR_CAMERA_RESULT == errorCode)) { Mutex::Autolock al(mLatestRequestMutex); mLatestFailedRequestId = resultExtras.requestId; mLatestRequestSignal.signal(); } mCaptureSequencer->notifyError(errorCode, resultExtras); return; default: Loading Loading @@ -2303,7 +2311,7 @@ status_t Camera2Client::waitUntilCurrentRequestIdLocked() { status_t Camera2Client::waitUntilRequestIdApplied(int32_t requestId, nsecs_t timeout) { Mutex::Autolock l(mLatestRequestMutex); while (mLatestRequestId != requestId) { while ((mLatestRequestId != requestId) && (mLatestFailedRequestId != requestId)) { nsecs_t startTime = systemTime(); auto res = mLatestRequestSignal.waitRelative(mLatestRequestMutex, timeout); Loading @@ -2312,7 +2320,7 @@ status_t Camera2Client::waitUntilRequestIdApplied(int32_t requestId, nsecs_t tim timeout -= (systemTime() - startTime); } return OK; return (mLatestRequestId == requestId) ? OK : DEAD_OBJECT; } void Camera2Client::notifyRequestId(int32_t requestId) { Loading
services/camera/libcameraservice/api1/Camera2Client.h +1 −0 Original line number Diff line number Diff line Loading @@ -237,6 +237,7 @@ private: mutable Mutex mLatestRequestMutex; Condition mLatestRequestSignal; int32_t mLatestRequestId = -1; int32_t mLatestFailedRequestId = -1; status_t waitUntilRequestIdApplied(int32_t requestId, nsecs_t timeout); status_t waitUntilCurrentRequestIdLocked(); }; Loading
services/camera/libcameraservice/device3/Camera3Device.cpp +2 −1 Original line number Diff line number Diff line Loading @@ -60,6 +60,7 @@ #include "device3/Camera3SharedOutputStream.h" #include "CameraService.h" #include "utils/CameraThreadState.h" #include "utils/TraceHFR.h" #include <algorithm> #include <tuple> Loading Loading @@ -2834,7 +2835,7 @@ void Camera3Device::onInflightMapFlushedLocked() { } void Camera3Device::removeInFlightMapEntryLocked(int idx) { ATRACE_CALL(); ATRACE_HFR_CALL(); nsecs_t duration = mInFlightMap.valueAt(idx).maxExpectedDuration; mInFlightMap.removeItemsAt(idx, 1); Loading