OSDN Git Service

CameraMetadata: Fix String tag update null character issue
authorZhijun He <zhijunhe@google.com>
Thu, 27 Mar 2014 23:46:15 +0000 (16:46 -0700)
committerZhijun He <zhijunhe@google.com>
Fri, 28 Mar 2014 01:39:04 +0000 (18:39 -0700)
String8.size() doesn't count the null character in whatever case. But camera
metadata tag android.jpeg.gpsProcessingMethod need a null-terminited string.

Bug: 13679912
Change-Id: I91e742702b16b9ab9b42f9822de189a9a96e8e53

camera/CameraMetadata.cpp

index 6b726e0..1567cd1 100644 (file)
@@ -273,7 +273,8 @@ status_t CameraMetadata::update(uint32_t tag,
     if ( (res = checkType(tag, TYPE_BYTE)) != OK) {
         return res;
     }
-    return updateImpl(tag, (const void*)string.string(), string.size());
+    // string.size() doesn't count the null termination character.
+    return updateImpl(tag, (const void*)string.string(), string.size() + 1);
 }
 
 status_t CameraMetadata::updateImpl(uint32_t tag, const void *data,