camera2 api: marshal rect, size, string for metadata
Change-Id: Iec2fd823bc92394da44abb32ca38a625d7638e3d
diff --git a/core/jni/android_hardware_photography_CameraMetadata.cpp b/core/jni/android_hardware_photography_CameraMetadata.cpp
index 5070d2c..5190a37 100644
--- a/core/jni/android_hardware_photography_CameraMetadata.cpp
+++ b/core/jni/android_hardware_photography_CameraMetadata.cpp
@@ -267,7 +267,13 @@
if (src == NULL) {
// If array is NULL, delete the entry
- res = metadata->erase(tag);
+ if (metadata->exists(tag)) {
+ res = metadata->erase(tag);
+ ALOGV("%s: Erase values (res = %d)", __FUNCTION__, res);
+ } else {
+ res = OK;
+ ALOGV("%s: Don't need to erase", __FUNCTION__);
+ }
} else {
// Copy from java array into native array
ScopedByteArrayRO arrayReader(env, src);
@@ -275,6 +281,8 @@
res = Helpers::updateAny(metadata, static_cast<uint32_t>(tag),
tagType, arrayReader.get(), arrayReader.size());
+
+ ALOGV("%s: Update values (res = %d)", __FUNCTION__, res);
}
if (res == OK) {