diff options
-rw-r--r-- | lldb/source/Breakpoint/BreakpointLocation.cpp | 3 | ||||
-rw-r--r-- | lldb/source/Breakpoint/BreakpointOptions.cpp | 3 |
2 files changed, 6 insertions, 0 deletions
diff --git a/lldb/source/Breakpoint/BreakpointLocation.cpp b/lldb/source/Breakpoint/BreakpointLocation.cpp index 04142b268e4..fe8267dcacd 100644 --- a/lldb/source/Breakpoint/BreakpointLocation.cpp +++ b/lldb/source/Breakpoint/BreakpointLocation.cpp @@ -254,7 +254,10 @@ BreakpointLocation::ConditionSaysStop (ExecutionContext &exe_ctx, Error &error) const char *condition_text = GetConditionText(&condition_hash); if (!condition_text) + { + m_user_expression_sp.reset(); return false; + } if (condition_hash != m_condition_hash || !m_user_expression_sp || diff --git a/lldb/source/Breakpoint/BreakpointOptions.cpp b/lldb/source/Breakpoint/BreakpointOptions.cpp index d0aaf47d8a6..3a4a117695f 100644 --- a/lldb/source/Breakpoint/BreakpointOptions.cpp +++ b/lldb/source/Breakpoint/BreakpointOptions.cpp @@ -162,6 +162,9 @@ BreakpointOptions::HasCallback () void BreakpointOptions::SetCondition (const char *condition) { + if (!condition) + condition = ""; + m_condition_text.assign(condition); std::hash<std::string> hasher; m_condition_text_hash = hasher(m_condition_text); |