[Lldb-commits] [lldb] r161639 - /lldb/trunk/source/Target/StopInfo.cpp

Johnny Chen johnny.chen at apple.com
Thu Aug 9 16:10:57 PDT 2012


Author: johnny
Date: Thu Aug  9 18:10:57 2012
New Revision: 161639

URL: http://llvm.org/viewvc/llvm-project?rev=161639&view=rev
Log:
rdar://problem/11457143

Forgot to check in this file.  Oops!

Modified:
    lldb/trunk/source/Target/StopInfo.cpp

Modified: lldb/trunk/source/Target/StopInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Target/StopInfo.cpp?rev=161639&r1=161638&r2=161639&view=diff
==============================================================================
--- lldb/trunk/source/Target/StopInfo.cpp (original)
+++ lldb/trunk/source/Target/StopInfo.cpp Thu Aug  9 18:10:57 2012
@@ -492,17 +492,6 @@
                 }
             }
             StoppointCallbackContext context (event_ptr, exe_ctx, false);
-            bool stop_requested = wp_sp->InvokeCallback (&context);
-            // Also make sure that the callback hasn't continued the target.  
-            // If it did, when we'll set m_should_start to false and get out of here.
-            if (HasTargetRunSinceMe ())
-                m_should_stop = false;
-            
-            if (m_should_stop && !stop_requested)
-            {
-                // We have been vetoed.
-                m_should_stop = false;
-            }
 
             if (m_should_stop && wp_sp->GetConditionText() != NULL)
             {
@@ -571,6 +560,22 @@
                     m_should_stop = true;
                 }
             }
+
+            // If the condition says to stop, we run the callback to further decide whether to stop.
+            if (m_should_stop)
+            {
+                bool stop_requested = wp_sp->InvokeCallback (&context);
+                // Also make sure that the callback hasn't continued the target.  
+                // If it did, when we'll set m_should_stop to false and get out of here.
+                if (HasTargetRunSinceMe ())
+                    m_should_stop = false;
+                
+                if (m_should_stop && !stop_requested)
+                {
+                    // We have been vetoed by the callback mechanism.
+                    m_should_stop = false;
+                }
+            }
         }
         else
         {





More information about the lldb-commits mailing list