From 9e676ebb3a1f5bbe023e87832255cb73b7b60377 Mon Sep 17 00:00:00 2001 From: zhanghang133 Date: Mon, 28 Oct 2024 11:07:06 +0800 Subject: [PATCH] =?UTF-8?q?cherry=20pick=20730eb16=20from=20https://gitee.?= =?UTF-8?q?com/zhanghang133/drivers=5Finterface/pulls/1331=20=E5=88=A0?= =?UTF-8?q?=E9=99=A4-s=E7=BC=96=E8=AF=91=E9=80=89=E9=A1=B9=EF=BC=8C?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0vec=E7=9A=84size=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: zhanghang133 --- camera/metadata/BUILD.gn | 2 +- camera/metadata/include/camera_metadata_info.h | 1 + camera/metadata/src/metadata_utils.cpp | 4 ++++ camera/sequenceable/buffer_handle/BUILD.gn | 2 +- camera/sequenceable/buffer_producer/BUILD.gn | 2 +- camera/sequenceable/map_data/BUILD.gn | 2 +- 6 files changed, 9 insertions(+), 4 deletions(-) diff --git a/camera/metadata/BUILD.gn b/camera/metadata/BUILD.gn index 312ab70f..10fa979e 100644 --- a/camera/metadata/BUILD.gn +++ b/camera/metadata/BUILD.gn @@ -28,7 +28,7 @@ ohos_shared_library("metadata") { ] cflags_cc = cflags cflags_cc += [ "-fstack-protector-strong" ] - ldflags = [ "-s" ] + if (drivers_interface_camera_feature_coverage) { cflags += [ "--coverage" ] ldflags += [ "--coverage" ] diff --git a/camera/metadata/include/camera_metadata_info.h b/camera/metadata/include/camera_metadata_info.h index 042d020e..82644d47 100644 --- a/camera/metadata/include/camera_metadata_info.h +++ b/camera/metadata/include/camera_metadata_info.h @@ -25,6 +25,7 @@ static constexpr uint32_t MAX_SUPPORTED_TAGS = 1000; static constexpr uint32_t MAX_SUPPORTED_ITEMS = (12000 * 2 * 2); static constexpr uint32_t MAX_ITEM_CAPACITY = (1000 * 10); static constexpr uint32_t MAX_DATA_CAPACITY = (1000 * 10 * 10 * 10); +static constexpr uint32_t MIN_VEC_SIZE = 12; #define METADATA_PACKET_ALIGNMENT \ MaxAlignment(MaxAlignment(DATA_ALIGNMENT, METADATA_ALIGNMENT), ITEM_ALIGNMENT) diff --git a/camera/metadata/src/metadata_utils.cpp b/camera/metadata/src/metadata_utils.cpp index 40cb2157..7bbfb8fb 100644 --- a/camera/metadata/src/metadata_utils.cpp +++ b/camera/metadata/src/metadata_utils.cpp @@ -265,6 +265,10 @@ void MetadataUtils::ConvertVecToMetadata(const std::vector& cameraAbili uint32_t itemCapacity = 0; uint32_t dataCapacity = 0; + if (cameraAbility.size() < MIN_VEC_SIZE) { + METADATA_ERR_LOG("ConvertVecToMetadata cameraAbility size:%{public}d", static_cast(cameraAbility.size())); + return; + } ReadData(tagCount, index, cameraAbility); if (tagCount > MAX_SUPPORTED_TAGS) { METADATA_ERR_LOG("ConvertVecToMetadata tagCount out of range:%{public}d", tagCount); diff --git a/camera/sequenceable/buffer_handle/BUILD.gn b/camera/sequenceable/buffer_handle/BUILD.gn index 25e7343f..eb3d1eb0 100644 --- a/camera/sequenceable/buffer_handle/BUILD.gn +++ b/camera/sequenceable/buffer_handle/BUILD.gn @@ -35,7 +35,7 @@ ohos_shared_library("libbuffer_handle_sequenceable_1.0") { "ipc:ipc_single", ] cflags_cc = [ "-fstack-protector-strong" ] - ldflags = [ "-s" ] + if (drivers_interface_camera_feature_coverage) { cflags_cc += [ "--coverage" ] ldflags += [ "--coverage" ] diff --git a/camera/sequenceable/buffer_producer/BUILD.gn b/camera/sequenceable/buffer_producer/BUILD.gn index b4559322..3f5d110d 100644 --- a/camera/sequenceable/buffer_producer/BUILD.gn +++ b/camera/sequenceable/buffer_producer/BUILD.gn @@ -36,7 +36,7 @@ ohos_shared_library("libbuffer_producer_sequenceable_1.0") { "ipc:ipc_single", ] cflags_cc = [ "-fstack-protector-strong" ] - ldflags = [ "-s" ] + if (drivers_interface_camera_feature_coverage) { cflags_cc += [ "--coverage" ] ldflags += [ "--coverage" ] diff --git a/camera/sequenceable/map_data/BUILD.gn b/camera/sequenceable/map_data/BUILD.gn index a1e920de..03245741 100644 --- a/camera/sequenceable/map_data/BUILD.gn +++ b/camera/sequenceable/map_data/BUILD.gn @@ -35,7 +35,7 @@ ohos_shared_library("libmap_data_sequenceable_1.0") { "ipc:ipc_single", ] cflags_cc = [ "-fstack-protector-strong" ] - ldflags = [ "-s" ] + if (drivers_interface_camera_feature_coverage) { cflags_cc += [ "--coverage" ] ldflags += [ "--coverage" ] -- Gitee