summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lldb/source/Breakpoint/BreakpointLocation.cpp3
-rw-r--r--lldb/source/Breakpoint/BreakpointOptions.cpp3
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);
OpenPOWER on IntegriCloud