Merge "libdebuggerd: fix out of bounds write."

am: eb1b202acb

Change-Id: Id3c0b0334fc50812c6e65b307db36977b7eb1150
This commit is contained in:
Josh Gao 2018-04-20 19:31:14 -07:00 committed by android-build-merger
commit 3c9ed98fce

View file

@ -247,14 +247,13 @@ static void dump_abort_message(log_t* log, Memory* process_memory, uint64_t addr
length -= sizeof(size_t);
std::vector<char> msg(length);
// The abort message should be null terminated already, but reserve a spot for NUL just in case.
std::vector<char> msg(length + 1);
if (!process_memory->ReadFully(address + sizeof(length), &msg[0], length)) {
_LOG(log, logtype::HEADER, "Failed to read abort message: %s\n", strerror(errno));
return;
}
// The abort message should be null terminated already, but just in case...
msg[length] = '\0';
_LOG(log, logtype::HEADER, "Abort message: '%s'\n", &msg[0]);
}