camera.provider default: Don't stop init if vendor tags are bad.
And definitely don't stop init if there are no vendor tags defined at
all.
Instead, just log about it.
Test: gce camera HAL init succeeds; no regression to sailfish camera
Bug: 35036220
Change-Id: I7f4481d7ec1a88df0c67a66c364f351b3321b221
diff --git a/camera/provider/2.4/default/CameraProvider.cpp b/camera/provider/2.4/default/CameraProvider.cpp
index f1a66a8..f3ba201 100644
--- a/camera/provider/2.4/default/CameraProvider.cpp
+++ b/camera/provider/2.4/default/CameraProvider.cpp
@@ -234,8 +234,10 @@
// Setup vendor tags here so HAL can setup vendor keys in camera characteristics
VendorTagDescriptor::clearGlobalVendorTagDescriptor();
- bool setupSucceed = setUpVendorTags();
- return !setupSucceed; // return flag here is mInitFailed
+ if (!setUpVendorTags()) {
+ ALOGE("%s: Vendor tag setup failed, will not be available.", __FUNCTION__);
+ }
+ return false; // mInitFailed
}
bool CameraProvider::setUpVendorTags() {
@@ -245,7 +247,7 @@
// Check if vendor operations have been implemented
if (!mModule->isVendorTagDefined()) {
ALOGI("%s: No vendor tags defined for this device.", __FUNCTION__);
- return false;
+ return true;
}
mModule->getVendorTagOps(&vOps);