mirror of
https://github.com/Evolution-X/hardware_interfaces
synced 2026-02-01 11:36:00 +00:00
Camera: Correct partial result entry count query
Use the partial tag count instead of the size of the metadata buffer. Additionally initialize 'collectedResult' to avoid false positives when checking partial result entries against invalid/uninitialized accumulated results. Bug: 187156343 Test: Partner verified Change-Id: Iff55f53952c7b06bc2a0b9786247d8ec04227705
This commit is contained in:
@@ -997,7 +997,8 @@ protected:
|
||||
frameNumber(0),
|
||||
partialResultCount(0),
|
||||
errorStreamId(-1),
|
||||
hasInputBuffer(false) {}
|
||||
hasInputBuffer(false),
|
||||
collectedResult(1, 10) {}
|
||||
|
||||
InFlightRequest(ssize_t numBuffers, bool hasInput,
|
||||
bool partialResults, uint32_t partialCount,
|
||||
@@ -1013,7 +1014,8 @@ protected:
|
||||
frameNumber(0),
|
||||
partialResultCount(0),
|
||||
errorStreamId(-1),
|
||||
hasInputBuffer(hasInput) {}
|
||||
hasInputBuffer(hasInput),
|
||||
collectedResult(1, 10) {}
|
||||
|
||||
InFlightRequest(ssize_t numBuffers, bool hasInput,
|
||||
bool partialResults, uint32_t partialCount,
|
||||
@@ -1031,6 +1033,7 @@ protected:
|
||||
partialResultCount(0),
|
||||
errorStreamId(-1),
|
||||
hasInputBuffer(hasInput),
|
||||
collectedResult(1, 10),
|
||||
expectedPhysicalResults(extraPhysicalResult) {}
|
||||
};
|
||||
|
||||
@@ -1313,7 +1316,7 @@ bool CameraHidlTest::DeviceCb::processCaptureResultLocked(const CaptureResult& r
|
||||
reinterpret_cast<const camera_metadata_t*>(resultMetadata.data());
|
||||
const camera_metadata_t* collectedMetadata = request->collectedResult.getAndLock();
|
||||
camera_metadata_ro_entry_t searchEntry, foundEntry;
|
||||
for (size_t i = 0; i < get_camera_metadata_size(partialMetadata); i++) {
|
||||
for (size_t i = 0; i < get_camera_metadata_entry_count(partialMetadata); i++) {
|
||||
if (0 != get_camera_metadata_ro_entry(partialMetadata, i, &searchEntry)) {
|
||||
ADD_FAILURE();
|
||||
request->collectedResult.unlock(collectedMetadata);
|
||||
|
||||
Reference in New Issue
Block a user