diff --git a/debuggerd/libdebuggerd/tombstone.cpp b/debuggerd/libdebuggerd/tombstone.cpp index 2b7529217..af8072e76 100644 --- a/debuggerd/libdebuggerd/tombstone.cpp +++ b/debuggerd/libdebuggerd/tombstone.cpp @@ -247,14 +247,13 @@ static void dump_abort_message(log_t* log, Memory* process_memory, uint64_t addr length -= sizeof(size_t); - std::vector msg(length); + // The abort message should be null terminated already, but reserve a spot for NUL just in case. + std::vector 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]); }