Loading services/camera/libcameraservice/device3/Camera3Device.cpp +5 −1 Original line number Diff line number Diff line Loading @@ -999,6 +999,10 @@ status_t Camera3Device::waitUntilDrained() { Mutex::Autolock il(mInterfaceLock); Mutex::Autolock l(mLock); return waitUntilDrainedLocked(); } status_t Camera3Device::waitUntilDrainedLocked() { switch (mStatus) { case STATUS_UNINITIALIZED: case STATUS_UNCONFIGURED: Loading Loading @@ -1209,7 +1213,7 @@ status_t Camera3Device::flush() { if (mHal3Device->common.version >= CAMERA_DEVICE_API_VERSION_3_1) { res = mHal3Device->ops->flush(mHal3Device); } else { res = waitUntilDrained(); res = waitUntilDrainedLocked(); } return res; Loading services/camera/libcameraservice/device3/Camera3Device.h +7 −0 Original line number Diff line number Diff line Loading @@ -245,6 +245,13 @@ class Camera3Device : */ status_t waitUntilStateThenRelock(bool active, nsecs_t timeout); /** * Implementation of waitUntilDrained. On success, will transition to IDLE state. * * Need to be called with mLock and mInterfaceLock held. */ status_t waitUntilDrainedLocked(); /** * Do common work for setting up a streaming or single capture request. * On success, will transition to ACTIVE if in IDLE. Loading Loading
services/camera/libcameraservice/device3/Camera3Device.cpp +5 −1 Original line number Diff line number Diff line Loading @@ -999,6 +999,10 @@ status_t Camera3Device::waitUntilDrained() { Mutex::Autolock il(mInterfaceLock); Mutex::Autolock l(mLock); return waitUntilDrainedLocked(); } status_t Camera3Device::waitUntilDrainedLocked() { switch (mStatus) { case STATUS_UNINITIALIZED: case STATUS_UNCONFIGURED: Loading Loading @@ -1209,7 +1213,7 @@ status_t Camera3Device::flush() { if (mHal3Device->common.version >= CAMERA_DEVICE_API_VERSION_3_1) { res = mHal3Device->ops->flush(mHal3Device); } else { res = waitUntilDrained(); res = waitUntilDrainedLocked(); } return res; Loading
services/camera/libcameraservice/device3/Camera3Device.h +7 −0 Original line number Diff line number Diff line Loading @@ -245,6 +245,13 @@ class Camera3Device : */ status_t waitUntilStateThenRelock(bool active, nsecs_t timeout); /** * Implementation of waitUntilDrained. On success, will transition to IDLE state. * * Need to be called with mLock and mInterfaceLock held. */ status_t waitUntilDrainedLocked(); /** * Do common work for setting up a streaming or single capture request. * On success, will transition to ACTIVE if in IDLE. Loading