diff options
author | 2014-11-03 23:38:42 +0000 | |
---|---|---|
committer | 2014-11-03 23:38:43 +0000 | |
commit | 668f0a356cba44c22d8ca0c9f4711613885d46a9 (patch) | |
tree | 2a761d729c706abe8c4fca98e89d818e961a5168 /tools/aapt/StringPool.cpp | |
parent | 3c7efdc00506e6561ca08933f0b2acf5e3f16b02 (diff) | |
parent | 4bf58108d442b37ab4adf5ce3a4ecd63472ce254 (diff) |
Merge "Fix issues that will be present in C++11" into lmp-mr1-dev
Diffstat (limited to 'tools/aapt/StringPool.cpp')
-rw-r--r-- | tools/aapt/StringPool.cpp | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/tools/aapt/StringPool.cpp b/tools/aapt/StringPool.cpp index 06769e4a6b4d..2727b3dc9252 100644 --- a/tools/aapt/StringPool.cpp +++ b/tools/aapt/StringPool.cpp @@ -21,7 +21,8 @@ #define NOISY(x) //x -void strcpy16_htod(uint16_t* dst, const uint16_t* src) +#if __cplusplus >= 201103L +void strcpy16_htod(char16_t* dst, const char16_t* src) { while (*src) { char16_t s = htods(*src); @@ -30,6 +31,17 @@ void strcpy16_htod(uint16_t* dst, const uint16_t* src) } *dst = 0; } +#endif + +void strcpy16_htod(uint16_t* dst, const char16_t* src) +{ + while (*src) { + uint16_t s = htods(static_cast<uint16_t>(*src)); + *dst++ = s; + src++; + } + *dst = 0; +} void printStringPool(const ResStringPool* pool) { @@ -416,7 +428,7 @@ status_t StringPool::writeStringBlock(const sp<AaptFile>& pool) return NO_MEMORY; } - const size_t charSize = mUTF8 ? sizeof(uint8_t) : sizeof(char16_t); + const size_t charSize = mUTF8 ? sizeof(uint8_t) : sizeof(uint16_t); size_t strPos = 0; for (i=0; i<STRINGS; i++) { |