GRExprEngine::ProcessBranch: Don't register a "pretty-stack printer" when the Condition is null.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66636 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Analysis/GRExprEngine.cpp b/lib/Analysis/GRExprEngine.cpp
index c6457d9..6ff01fc 100644
--- a/lib/Analysis/GRExprEngine.cpp
+++ b/lib/Analysis/GRExprEngine.cpp
@@ -543,10 +543,6 @@
 void GRExprEngine::ProcessBranch(Stmt* Condition, Stmt* Term,
                                  BranchNodeBuilder& builder) {
   
-  PrettyStackTraceLoc CrashInfo(getContext().getSourceManager(),
-                                Condition->getLocStart(),
-                                "Error evaluating branch");
-
   // Remove old bindings for subexpressions.
   const GRState* PrevState =
     StateMgr.RemoveSubExprBindings(builder.getState());
@@ -557,6 +553,10 @@
     return;
   }
   
+  PrettyStackTraceLoc CrashInfo(getContext().getSourceManager(),
+                                Condition->getLocStart(),
+                                "Error evaluating branch");
+  
   SVal V = GetSVal(PrevState, Condition);
   
   switch (V.getBaseKind()) {
@@ -2380,11 +2380,10 @@
         continue;
       }
       
-      // Handle all other values.
-      
+      // Handle all other values.      
       BinaryOperator::Opcode Op = U->isIncrementOp() ? BinaryOperator::Add
                                                      : BinaryOperator::Sub;
-      
+
       SVal Result = EvalBinOp(Op, V2, MakeConstantVal(1U, U));      
       state = BindExpr(state, U, U->isPostfix() ? V2 : Result);