diff options
Diffstat (limited to 'lldb/source/Target/ThreadPlanCallFunction.cpp')
-rw-r--r-- | lldb/source/Target/ThreadPlanCallFunction.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/lldb/source/Target/ThreadPlanCallFunction.cpp b/lldb/source/Target/ThreadPlanCallFunction.cpp index 09bdd3d73c0..9f6c18e5bd8 100644 --- a/lldb/source/Target/ThreadPlanCallFunction.cpp +++ b/lldb/source/Target/ThreadPlanCallFunction.cpp @@ -52,6 +52,9 @@ ThreadPlanCallFunction::ThreadPlanCallFunction (Thread &thread, m_takedown_done (false), m_stop_address (LLDB_INVALID_ADDRESS) { + // Call function thread plans need to be master plans so that they can potentially stay on the stack when + // a breakpoint is hit during the function call. + SetIsMasterPlan (true); SetOkayToDiscard (discard_on_error); ProcessSP process_sp (thread.GetProcess()); @@ -172,6 +175,9 @@ ThreadPlanCallFunction::ThreadPlanCallFunction (Thread &thread, m_return_type (return_type), m_takedown_done (false) { + // Call function thread plans need to be master plans so that they can potentially stay on the stack when + // a breakpoint is hit during the function call. + SetIsMasterPlan (true); SetOkayToDiscard (discard_on_error); ProcessSP process_sp (thread.GetProcess()); |