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
Upload for stashing. I need to redownload/rebuild Android to test
the new feature.
Bug: N/A
Test: atest VtsAidlHalCameraProvider_TargetTest
Change-Id: Ic9aa621b6d3e1297c83add88283559915e36311e
Fence fd is closed when processCaptureResult returns. In order to
wait for the release fence *after* processCaptureResult returns,
the fence fd needs to be duped.
Test: Vendor testing
Bug: 241281568
Change-Id: Ib74f9bb141802713b476a2ef48a2252125a7915d
If the device is depth-only, use threshold with Y16 format rather than
IMPLEMENTATION_DEFINED.
This fixes the regression introduced by the fix for b/265984260.
Bug: 276957901
Test: atest VtsAidlHalCameraProvider_TargetTest
Change-Id: If9023f1ed17bb761abbb9be36e567264f8bf0689
The camera HAL may signal release fence after processCaptureResult.
If the VTS test waits for the release fence in the context of the
capture result, there is possibility of deadlock.
Rather, we should wait for the releaseFence in a different thread
context to really emulate the real application behavior.
Test: atest VtsAidlHalCameraProvider_TargetTest
Bug: 241281568
Change-Id: Id1d92e901aae1cab084846d252ef090fcda182d7
Per camera metadata definition, ROTATE_AND_CROP_AUTO will never be sent
to the HAL, as camera service takes reponsibility of translating AUTO to
specific rotation value. So for VTS tests, we should always override
the metadata in CaptureRequest.
Bug: 270052579
Test: Run VtsAidlHalCameraProvider_TargetTest
Change-Id: I96f4992e145da25c463b0b406aa2a371af30f41f
getAvailableOutputStreams() shouldn't unconditionally add Y16 stream
configurations. Instead, if the threshold being passed in is valid,
getAvailableOutputStreams() should use the threshold's format
instead.
Test: Run VTS on pixel; vendor testing.
Bug: 265984260
Change-Id: I3c8119c6032141bb6e2f95f060f014a13340d16b
In case we have a camera device that doesn't support the
Hal buffer management mode, services are required to use
the frame number and stream id to deduce the specific
buffer id and Hals are not mandated to return valid
buffer ids as part of the capture result.
Bug: 265092659
Test:adb shell
/data/nativetest64/VtsAidlHalCameraProvider_TargetTest/VtsAidlHalCameraProvider_TargetTest
--gtest_filter=PerInstance/CameraAidlTest.process10BitDynamicRangeRequest/0_android_hardware_camera_provider_ICameraProvider_internal_0
Change-Id: I3b10e91d38a13afcca45f26712cc5d5c241c2a32
"physicalCameraDeviceStatusChange" returns a default
ScopedAStatus that will not include a valid AStatus instance.
This will result in binder instabilities once the status
is being parceled.
Return "ScopedAStatus::ok" instead.
Bug: 253993253
Test: adb shell VtsAidlHalCameraProvider_TargetTest
Change-Id: I219f608a04aaec0631e3de58a7e0d47a30294e52
I wrote a script for this, see my email
"introducing: ownersfix.py - basic cleaning script for simple OWNERS files"
Bug: 265168485
Test: N/A
Merged-In: I47ab60785b193764a96d7b63820c87ec4fa81f7f
Change-Id: I47ab60785b193764a96d7b63820c87ec4fa81f7f
Including LOG_TAG in a header prevents any files which uses
this header from defining a LOG_TAG.
Bug: 259162245
Change-Id: I847f4b4f8898aac373db2566c745d3e73404f58a
Merged-In: I847f4b4f8898aac373db2566c745d3e73404f58a
- Backport similar fix from AIDL to HIDL to protect
from malformed metadata
Bug: 256166626
Test: CTS test
Change-Id: If8f83520144824e38ed102b7468d6d5ee2e6d963
Required to automate AIDL finalization - makes errors show up
now instead of later.
Bug: 188871598
Test: build
Change-Id: Ia38678a7dbc0abc0c0d19fa0794f0f80b2638156
Merged-In: I382dea5d13582817959001246240141e83d8172d
Makes it easier to see which versions are available.
Bug: 188871598
Test: N/A
Merged-In: Ica76a8225fec8dc5267362cbfd43e06e65ad3f1e
Change-Id: I8c091237478e4b095ce4be280ae5d6fbcd0b7152
The reason for this problem is: local variables are used when saving
PhysicalCameraCharacteristics. When its life cycle ends, physChars will
be released. Since Entry uses a pointer, data will be null. So physChars
should be defined outside else to ensure that physChars is not released
during use
Bug: 248221707
Test: VtsHalCameraProviderV2_4TargetTest
Test: VtsAidlHalCameraProvider_TargetTest
Signed-off-by: kongchenrui <kongchenrui@xiaomi.com>
Change-Id: I4c05e695d255f210f310f8ce78ec2fa71a42cee9