Limit the character array summary to 512 bytes.

llvm-svn: 134827
This commit is contained in:
Greg Clayton 2011-07-09 17:17:07 +00:00
parent ebf121b188
commit 5707d224e1
1 changed files with 12 additions and 0 deletions

View File

@ -567,10 +567,20 @@ ValueObject::GetSummaryAsCString ()
AddressType cstr_address_type = eAddressTypeInvalid;
size_t cstr_len = 0;
bool capped_data = false;
if (type_flags.Test (ClangASTContext::eTypeIsArray))
{
// We have an array
cstr_len = ClangASTContext::GetArraySize (clang_type);
if (cstr_len > 512) // TODO: make cap a setting
{
cstr_len = ClangASTContext::GetArraySize (clang_type);
if (cstr_len > 512) // TODO: make cap a setting
{
capped_data = true;
cstr_len = 512;
}
}
cstr_address = GetAddressOf (cstr_address_type, true);
}
else
@ -601,6 +611,8 @@ ValueObject::GetSummaryAsCString ()
LLDB_INVALID_ADDRESS,// base address
0, // bitfield bit size
0); // bitfield bit offset
if (capped_data)
sstr << "...";
sstr << '"';
}
}