mirror of
https://github.com/Evolution-X/hardware_interfaces
synced 2026-02-01 11:36:00 +00:00
Merge "Camera: VTS: Don't access invalid resources" into qt-dev am: d016fd7949
am: 137f202385
Change-Id: I54725456629d1cfcbb79027a151d336cd43b2479
This commit is contained in:
@@ -607,7 +607,9 @@ public:
|
||||
|
||||
struct DeviceCb : public V3_5::ICameraDeviceCallback {
|
||||
DeviceCb(CameraHidlTest *parent, int deviceVersion, const camera_metadata_t *staticMeta) :
|
||||
mParent(parent), mDeviceVersion(deviceVersion), mStaticMetadata(staticMeta) {}
|
||||
mParent(parent), mDeviceVersion(deviceVersion) {
|
||||
mStaticMetadata = staticMeta;
|
||||
}
|
||||
|
||||
Return<void> processCaptureResult_3_4(
|
||||
const hidl_vec<V3_4::CaptureResult>& results) override;
|
||||
@@ -631,7 +633,7 @@ public:
|
||||
|
||||
CameraHidlTest *mParent; // Parent object
|
||||
int mDeviceVersion;
|
||||
const camera_metadata_t *mStaticMetadata;
|
||||
android::hardware::camera::common::V1_0::helper::CameraMetadata mStaticMetadata;
|
||||
bool hasOutstandingBuffersLocked();
|
||||
|
||||
/* members for requestStreamBuffers() and returnStreamBuffers()*/
|
||||
@@ -1194,18 +1196,20 @@ bool CameraHidlTest::DeviceCb::processCaptureResultLocked(const CaptureResult& r
|
||||
// Verify final result metadata
|
||||
bool isAtLeast_3_5 = mDeviceVersion >= CAMERA_DEVICE_API_VERSION_3_5;
|
||||
if (isAtLeast_3_5) {
|
||||
auto staticMetadataBuffer = mStaticMetadata.getAndLock();
|
||||
bool isMonochrome = Status::OK ==
|
||||
CameraHidlTest::isMonochromeCamera(mStaticMetadata);
|
||||
CameraHidlTest::isMonochromeCamera(staticMetadataBuffer);
|
||||
if (isMonochrome) {
|
||||
mParent->verifyMonochromeCameraResult(request->collectedResult);
|
||||
}
|
||||
|
||||
// Verify logical camera result metadata
|
||||
bool isLogicalCamera =
|
||||
Status::OK == CameraHidlTest::isLogicalMultiCamera(mStaticMetadata);
|
||||
Status::OK == CameraHidlTest::isLogicalMultiCamera(staticMetadataBuffer);
|
||||
if (isLogicalCamera) {
|
||||
mParent->verifyLogicalCameraResult(mStaticMetadata, request->collectedResult);
|
||||
mParent->verifyLogicalCameraResult(staticMetadataBuffer, request->collectedResult);
|
||||
}
|
||||
mStaticMetadata.unlock(staticMetadataBuffer);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5402,7 +5406,7 @@ void CameraHidlTest::configurePreviewStream(const std::string &name, int32_t dev
|
||||
ASSERT_EQ(Status::OK, s);
|
||||
staticMeta = clone_camera_metadata(
|
||||
reinterpret_cast<const camera_metadata_t*>(metadata.data()));
|
||||
ASSERT_NE(nullptr, staticMeta);
|
||||
ASSERT_NE(nullptr, staticMeta);
|
||||
});
|
||||
ASSERT_TRUE(ret.isOk());
|
||||
|
||||
|
||||
Reference in New Issue
Block a user