Camera: Invalidate buffer cache for partial buffer request failure
In case partial buffer request fails for a particular stream, the
successfully allocated buffers need to be invalidated from the
mBufferIdMaps. Otherwise, the camera frameworks thinks the HAL already
knows about the buffer, and sends a null buffer handle for a new buffer.
Test: Vendor testing
Bug: 198122465
Bug: 196202313
Change-Id: I73a710aebf102fcbb49e53b52c18e4835986f40f
diff --git a/services/camera/libcameraservice/device3/Camera3Device.h b/services/camera/libcameraservice/device3/Camera3Device.h
index 39714f0..543de64 100644
--- a/services/camera/libcameraservice/device3/Camera3Device.h
+++ b/services/camera/libcameraservice/device3/Camera3Device.h
@@ -412,6 +412,8 @@
std::pair<bool, uint64_t> getBufferId(
const buffer_handle_t& buf, int streamId) override;
+ uint64_t removeOneBufferCache(int streamId, const native_handle_t* handle) override;
+
status_t popInflightBuffer(int32_t frameNumber, int32_t streamId,
/*out*/ buffer_handle_t **buffer) override;