From 4d04309b91af65c078bef2d89fde1a90631c9cd7 Mon Sep 17 00:00:00 2001 From: Greg Clayton Date: Wed, 30 Jul 2014 18:34:58 +0000 Subject: [PATCH] Use Process::ReadMemoryFromPointer() instead of manually reading the pointer. llvm-svn: 214323 --- lldb/source/Expression/DWARFExpression.cpp | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/lldb/source/Expression/DWARFExpression.cpp b/lldb/source/Expression/DWARFExpression.cpp index e3e3bb3..e105ce8 100644 --- a/lldb/source/Expression/DWARFExpression.cpp +++ b/lldb/source/Expression/DWARFExpression.cpp @@ -1456,14 +1456,11 @@ DWARFExpression::Evaluate if (process) { lldb::addr_t pointer_addr = stack.back().GetScalar().ULongLong(LLDB_INVALID_ADDRESS); - uint8_t addr_bytes[sizeof(lldb::addr_t)]; - uint32_t addr_size = process->GetAddressByteSize(); Error error; - if (process->ReadMemory(pointer_addr, &addr_bytes, addr_size, error) == addr_size) + lldb:addr_t pointer_value = process->ReadPointerFromMemory(pointer_addr, error); + if (pointer_value != LLDB_INVALID_ADDRESS) { - DataExtractor addr_data(addr_bytes, sizeof(addr_bytes), process->GetByteOrder(), addr_size); - lldb::offset_t addr_data_offset = 0; - stack.back().GetScalar() = addr_data.GetPointer(&addr_data_offset); + stack.back().GetScalar() = pointer_value; stack.back().ClearContext(); } else -- 2.7.4