From 04488c485a8875ba4bd6d2d004ac778276ae37e0 Mon Sep 17 00:00:00 2001 From: Ted Woodward Date: Tue, 28 Jan 2020 13:31:40 -0600 Subject: [PATCH] Don't fail step out if remote server doesn't implement qMemoryRegionInfo Summary: The return address validation in D71372 will fail if the memory permissions can't be determined. Many embedded stubs either don't implement the qMemoryRegionInfo packet, or don't have memory permissions at all. Remove the return from the if clause that calls GetLoadAddressPermissions, so this call failing doesn't cause the step out to abort. Instead, assume that the memory permission check doesn't apply to this type of target. Reviewers: labath, jingham, clayborg, mossberg Reviewed By: labath Subscribers: lldb-commits Tags: #lldb Differential Revision: https://reviews.llvm.org/D72513 --- lldb/source/Target/ThreadPlanStepOut.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/lldb/source/Target/ThreadPlanStepOut.cpp b/lldb/source/Target/ThreadPlanStepOut.cpp index 9ca1b3f..eead322 100644 --- a/lldb/source/Target/ThreadPlanStepOut.cpp +++ b/lldb/source/Target/ThreadPlanStepOut.cpp @@ -135,7 +135,6 @@ ThreadPlanStepOut::ThreadPlanStepOut( m_return_addr); LLDB_LOGF(log, "ThreadPlanStepOut(%p): %s", static_cast(this), m_constructor_errors.GetData()); - return; } else if (!(permissions & ePermissionsExecutable)) { m_constructor_errors.Printf("Return address (0x%" PRIx64 ") did not point to executable memory.", -- 2.7.4