[Lldb-commits] [lldb] [lldb] Call FixUpPointer in WritePointerToMemory (try 2) (PR #153585)

David Spickett via lldb-commits lldb-commits at lists.llvm.org
Thu Aug 14 07:47:51 PDT 2025


================
@@ -640,6 +640,13 @@ void IRMemoryMap::WritePointerToMemory(lldb::addr_t process_address,
                                        lldb::addr_t address, Status &error) {
   error.Clear();
 
+  /// Only ask the Process to fix the address if this address belongs to the
+  /// process (host allocations are stored in m_data).
+  if (auto it = FindAllocation(process_address, 1);
+      it != m_allocations.end() && it->second.m_data.GetByteSize() == 0)
+    if (auto process_sp = GetProcessWP().lock())
+      address = process_sp->FixAnyAddress(address);
----------------
DavidSpickett wrote:

This is very "modern C++" but very much confusing to read. I think splitting the first if condition up is better. Or add braces to the first if, whichever you prefer.

https://github.com/llvm/llvm-project/pull/153585


More information about the lldb-commits mailing list