已合并
维测优化 #2056
维测优化 #2056
已合并
wangdongqi创建于 8月10日
共 2 个文件变更+18-6
@@ -526,6 +526,10 @@ std::map<uint32_t, uint32_t> g_itemDataTypeMap {
526CameraMetadata::CameraMetadata(size_t itemCapacity, size_t dataCapacity)526CameraMetadata::CameraMetadata(size_t itemCapacity, size_t dataCapacity)
527{527{
528 metadata_ = AllocateCameraMetadataBuffer(itemCapacity, AlignTo(dataCapacity, DATA_ALIGNMENT));528 metadata_ = AllocateCameraMetadataBuffer(itemCapacity, AlignTo(dataCapacity, DATA_ALIGNMENT));
529+ if (metadata_ == nullptr) {
530+ METADATA_ERR_LOG("CameraMetadata: AllocateCameraMetadataBuffer failed, itemCapacity: %{public}zu,"
531+ "dataCapacity: %{public}zu", itemCapacity, dataCapacity);
532+ }
529}533}
530 534 
531CameraMetadata::~CameraMetadata()535CameraMetadata::~CameraMetadata()
@@ -798,7 +802,8 @@ common_metadata_header_t *CameraMetadata::AllocateCameraMetadataBuffer(uint32_t
798 size_t memoryRequired = CalculateCameraMetadataMemoryRequired(item_capacity, data_capacity);802 size_t memoryRequired = CalculateCameraMetadataMemoryRequired(item_capacity, data_capacity);
799 void *buffer = calloc(1, memoryRequired);803 void *buffer = calloc(1, memoryRequired);
800 if (buffer == nullptr) {804 if (buffer == nullptr) {
801- METADATA_ERR_LOG("AllocateCameraMetadataBuffer memory allocation failed");805+ METADATA_ERR_LOG("AllocateCameraMetadataBuffer memory allocation failed, memoryRequired: %{public}zu",
806+ memoryRequired);
802 return reinterpret_cast<common_metadata_header_t *>(buffer);807 return reinterpret_cast<common_metadata_header_t *>(buffer);
803 }808 }
804 809 
@@ -307,10 +307,14 @@ void MetadataUtils::ConvertVecToMetadata(const std::vector<uint8_t>& cameraAbili
307 307 
308 metadata = std::make_shared<CameraMetadata>(itemCapacity, dataCapacity);308 metadata = std::make_shared<CameraMetadata>(itemCapacity, dataCapacity);
309 common_metadata_header_t *meta = metadata->get();309 common_metadata_header_t *meta = metadata->get();
310- for (auto &item_ : items) {310+ for (auto &item_: items) {
311 void *buffer = nullptr;311 void *buffer = nullptr;
312 MetadataUtils::ItemDataToBuffer(item_, &buffer);312 MetadataUtils::ItemDataToBuffer(item_, &buffer);
313- (void)AddCameraMetadataItem(meta, item_.item, buffer, item_.count);313+ int32_t addRet = AddCameraMetadataItem(meta, item_.item, buffer, item_.count);
314+ if (addRet != CAM_META_SUCCESS) {
315+ METADATA_ERR_LOG("ConvertVecToMetadata: AddCameraMetadataItem failed, ret=%{public}d, item=%{public}u",
316+ addRet, item_.item);
317+ }
314 FreeMetadataBuffer(item_);318 FreeMetadataBuffer(item_);
315 }319 }
316}320}
@@ -350,10 +354,14 @@ void MetadataUtils::ReadCameraMetadata(MessageParcel &data, common_metadata_head
350 items.push_back(item);354 items.push_back(item);
351 }355 }
352 356 
353- for (auto &item_ : items) {357+ for (auto &item_: items) {
354 void *buffer = nullptr;358 void *buffer = nullptr;
355 MetadataUtils::ItemDataToBuffer(item_, &buffer);359 MetadataUtils::ItemDataToBuffer(item_, &buffer);
356- (void)AddCameraMetadataItem(meta, item_.item, buffer, item_.count);360+ int32_t addRet = AddCameraMetadataItem(meta, item_.item, buffer, item_.count);
361+ if (addRet != CAM_META_SUCCESS) {
362+ METADATA_ERR_LOG("ReadCameraMetadata: AddCameraMetadataItem failed, ret=%{public}d, item=%{public}u",
363+ addRet, item_.item);
364+ }
357 FreeMetadataBuffer(item_);365 FreeMetadataBuffer(item_);
358 }366 }
359}367}
@@ -426,7 +434,6 @@ std::string MetadataUtils::EncodeToString(std::shared_ptr<CameraMetadata> metada
426 METADATA_ERR_LOG("MetadataUtils::EncodeToString Metadata is invalid");434 METADATA_ERR_LOG("MetadataUtils::EncodeToString Metadata is invalid");
427 return {};435 return {};
428 }436 }
429- 
430 common_metadata_header_t *meta = metadata->get();437 common_metadata_header_t *meta = metadata->get();
431 METADATA_CHECK_ERROR_RETURN_RET_LOG(438 METADATA_CHECK_ERROR_RETURN_RET_LOG(
432 (static_cast<uint64_t>(headerLength) + (itemLen * meta->item_count) + meta->data_count) >439 (static_cast<uint64_t>(headerLength) + (itemLen * meta->item_count) + meta->data_count) >