aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp')
-rw-r--r--lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
index 172a1cf..9564624 100644
--- a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
+++ b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
@@ -1637,7 +1637,13 @@ ProcessGDBRemote::DoAllocateMemory (size_t size, uint32_t permissions, Error &er
if (result == eExecutionCompleted)
{
allocated_addr = return_value_sp->GetScalar().ULongLong();
- m_addr_to_mmap_size[allocated_addr] = size;
+ if (GetAddressByteSize() == 4)
+ {
+ if (allocated_addr == UINT32_MAX)
+ allocated_addr = LLDB_INVALID_ADDRESS;
+ }
+ if (allocated_addr != LLDB_INVALID_ADDRESS)
+ m_addr_to_mmap_size[allocated_addr] = size;
}
}
}