b8863f6a03
The default External Camera HAL accidentally used `sizeof` on a `char *` to get the length of the string. This "worked" because the string in question "/dev/" has length of 5, while on a 32-bit system `char *` has a size of 4. This difference of 1 was handled a few lines later. However on 64-bit system `sizeof(char *)` returns 8 which breaks the logic later in code. As `sizeof` was being used as a proxy for strlen, this CL converts the uses C++'s std::char_traits::length to determine the string lengths at compile time. Bug: 265168485 Test: Manually tested that the calculated length is correct after the fix. Change-Id: I92481a2bcb74fdbbb483ef552168debf07b2d68a |
||
---|---|---|
.. | ||
2.4 | ||
2.5 | ||
2.6 | ||
2.7 | ||
aidl | ||
README.md |
Camera Provider HAL
Overview:
The camera.provider HAL is used by the Android camera service to discover, query, and open individual camera devices.
It also allows for direct control of the flash unit of camera devices that have one, for turning on/off torch mode.
More complete information about the Android camera HAL and subsystem can be found at source.android.com.
Version history:
types.hal:
@0.0:
Common enum and struct definitions for all camera HAL interfaces. Does not define any interfaces of its own.
ICameraProvider.hal:
@2.4:
First HIDL version of the camera provider HAL, closely matching the feature set and operation of the pre-HIDL camera HAL module v2.4.
ICameraProviderCallback.hal:
@2.4:
First HIDL version of the camara provider HAL callback interface, closely matching the feature set and operation of the pre-HIDL camera HAL module callbacks v2.4.
AIDL Camera HAL Default Implementation
The default implementation can be found at $ANDROID_BUILD_TOP/hardware/google/camera/common/hal/aidl_service and $ANDROID_BUILD_TOP/hardware/google/camera/devices/EmulatedCamera