diff options
Diffstat (limited to 'source/DataFormatters/TypeFormat.cpp')
-rw-r--r-- | source/DataFormatters/TypeFormat.cpp | 28 |
1 files changed, 25 insertions, 3 deletions
diff --git a/source/DataFormatters/TypeFormat.cpp b/source/DataFormatters/TypeFormat.cpp index a72f551c741f..0c62daf87bbc 100644 --- a/source/DataFormatters/TypeFormat.cpp +++ b/source/DataFormatters/TypeFormat.cpp @@ -38,6 +38,9 @@ m_my_revision(0) { } +TypeFormatImpl::~TypeFormatImpl () +{ +} TypeFormatImpl_Format::TypeFormatImpl_Format (lldb::Format f, const TypeFormatImpl::Flags& flags) : @@ -46,6 +49,10 @@ m_format (f) { } +TypeFormatImpl_Format::~TypeFormatImpl_Format () +{ +} + bool TypeFormatImpl_Format::FormatObject (ValueObject *valobj, std::string& dest) const @@ -64,7 +71,10 @@ TypeFormatImpl_Format::FormatObject (ValueObject *valobj, const RegisterInfo *reg_info = value.GetRegisterInfo(); if (reg_info) { - valobj->GetData(data); + Error error; + valobj->GetData(data, error); + if (error.Fail()) + return false; StreamString reg_sstr; data.Dump (®_sstr, @@ -105,7 +115,12 @@ TypeFormatImpl_Format::FormatObject (ValueObject *valobj, } } else - valobj->GetData(data); + { + Error error; + valobj->GetData(data, error); + if (error.Fail()) + return false; + } StreamString sstr; clang_type.DumpTypeValue (&sstr, // The stream to use for display @@ -154,6 +169,10 @@ m_types() { } +TypeFormatImpl_EnumType::~TypeFormatImpl_EnumType () +{ +} + bool TypeFormatImpl_EnumType::FormatObject (ValueObject *valobj, std::string& dest) const @@ -203,7 +222,10 @@ TypeFormatImpl_EnumType::FormatObject (ValueObject *valobj, if (valobj_enum_type.IsValid() == false) return false; DataExtractor data; - valobj->GetData(data); + Error error; + valobj->GetData(data, error); + if (error.Fail()) + return false; ExecutionContext exe_ctx (valobj->GetExecutionContextRef()); StreamString sstr; valobj_enum_type.DumpTypeValue(&sstr, |