The plan stack should never be used while empty.  GetCurrentPlan is the entry point to contol logic
for the plan stack, so assert here if it gets called with an empty plan stack.
<rdar://problem/11265974>


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@155078 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/source/Target/Thread.cpp b/source/Target/Thread.cpp
index fd06a2c..c483e5a 100644
--- a/source/Target/Thread.cpp
+++ b/source/Target/Thread.cpp
@@ -606,10 +606,11 @@
 ThreadPlan *
 Thread::GetCurrentPlan ()
 {
-    if (m_plan_stack.empty())
-        return NULL;
-    else
-        return m_plan_stack.back().get();
+    // There will always be at least the base plan.  If somebody is mucking with a
+    // thread with an empty plan stack, we should assert right away.
+    assert (!m_plan_stack.empty());
+
+    return m_plan_stack.back().get();
 }
 
 ThreadPlanSP