summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSergio Giro2015-08-20 17:28:53 -0500
committerAndroid Git Automerger2015-08-20 17:28:53 -0500
commite67b584869eea8d4e955e82de1e38ede080a2ed4 (patch)
treea687aebb5a6a03eaf291ae5f25d6ea4d46332dab
parent058ad0b6612457c54c7ad6e3b5d5a618d94ae966 (diff)
parent4956c0fe1e582a8497aff34a41aeb8bf4748eef0 (diff)
downloadplatform-system-core-e67b584869eea8d4e955e82de1e38ede080a2ed4.tar.gz
platform-system-core-e67b584869eea8d4e955e82de1e38ede080a2ed4.tar.xz
platform-system-core-e67b584869eea8d4e955e82de1e38ede080a2ed4.zip
am 4956c0fe: am 5b85b1d4: libutils: fix overflow in String8::allocFromUTF8
* commit '4956c0fe1e582a8497aff34a41aeb8bf4748eef0': libutils: fix overflow in String8::allocFromUTF8
-rw-r--r--libutils/String8.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/libutils/String8.cpp b/libutils/String8.cpp
index 9092cbc99..574165386 100644
--- a/libutils/String8.cpp
+++ b/libutils/String8.cpp
@@ -78,6 +78,9 @@ void terminate_string8()
78static char* allocFromUTF8(const char* in, size_t len) 78static char* allocFromUTF8(const char* in, size_t len)
79{ 79{
80 if (len > 0) { 80 if (len > 0) {
81 if (len == SIZE_MAX) {
82 return NULL;
83 }
81 SharedBuffer* buf = SharedBuffer::alloc(len+1); 84 SharedBuffer* buf = SharedBuffer::alloc(len+1);
82 ALOG_ASSERT(buf, "Unable to allocate shared buffer"); 85 ALOG_ASSERT(buf, "Unable to allocate shared buffer");
83 if (buf) { 86 if (buf) {