libutils: fix overflow in String8::allocFromUTF8
Patch contributed in: https://code.google.com/p/android/issues/detail?id=182908 Bug: 23290056 (cherry picked from commit4eeacbeec0) Change-Id: Ife1dc0791040150132bea6884f1e6c8d31972d1b (cherry picked from commitebabef2752)
This commit is contained in:
parent
9bd7afc0a1
commit
5b85b1d40d
1 changed files with 3 additions and 0 deletions
|
|
@ -78,6 +78,9 @@ void terminate_string8()
|
||||||
static char* allocFromUTF8(const char* in, size_t len)
|
static char* allocFromUTF8(const char* in, size_t len)
|
||||||
{
|
{
|
||||||
if (len > 0) {
|
if (len > 0) {
|
||||||
|
if (len == SIZE_MAX) {
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
SharedBuffer* buf = SharedBuffer::alloc(len+1);
|
SharedBuffer* buf = SharedBuffer::alloc(len+1);
|
||||||
ALOG_ASSERT(buf, "Unable to allocate shared buffer");
|
ALOG_ASSERT(buf, "Unable to allocate shared buffer");
|
||||||
if (buf) {
|
if (buf) {
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue