From ebabef275283f771151ec93c17469374b789b2c8 Mon Sep 17 00:00:00 2001 From: Sergio Giro Date: Tue, 18 Aug 2015 14:44:54 +0100 Subject: [PATCH] libutils: fix overflow in String8::allocFromUTF8 Patch contributed in: https://code.google.com/p/android/issues/detail?id=182908 Bug: 23290056 (cherry picked from commit 4eeacbeec0ae66e9d9395abbf83666709f2e11e3) Change-Id: Ife1dc0791040150132bea6884f1e6c8d31972d1b --- libutils/String8.cpp | 3 +++ 1 file changed, 3 insertions(+) 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) {