summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergio Giro <sgiro@google.com>2015-08-20 22:58:19 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2015-08-20 22:58:19 +0000
commit93f106b8d0207ce685ad56704df8a568f3edebb6 (patch)
tree9e49719e942355ecb6a1e46e73d4a291ce4edf19
parent87b02f23c0996ab487ef15794bf862b3cd3e5137 (diff)
parente97682be0634fe773f70097bc518e5d034efe8f7 (diff)
downloadcore-93f106b8d0207ce685ad56704df8a568f3edebb6.tar.gz
am e97682be: am a1a22b57: am e67b5848: am 4956c0fe: am 5b85b1d4: libutils: fix overflow in String8::allocFromUTF8
* commit 'e97682be0634fe773f70097bc518e5d034efe8f7': 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 3323b82a5..149660231 100644
--- a/libutils/String8.cpp
+++ b/libutils/String8.cpp
@@ -78,6 +78,9 @@ void terminate_string8()
static char* allocFromUTF8(const char* in, size_t len)
{
if (len > 0) {
+ if (len == SIZE_MAX) {
+ return NULL;
+ }
SharedBuffer* buf = SharedBuffer::alloc(len+1);
ALOG_ASSERT(buf, "Unable to allocate shared buffer");
if (buf) {