<rdar://problem/10357230>

Fixed an issue where async packets were incurring a delay even though they
were sent correctly. We now properly broadcast the private run state being
resumed correctly. Also fixed logging to reflect what is happening.



git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@143154 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp b/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
index 1f2ad79..85f56dd 100644
--- a/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
+++ b/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
@@ -290,6 +290,16 @@
                     // Make sure we wait until the continue packet has been sent again...
                     if (m_private_is_running.WaitForValueEqualTo (true, &timeout_time, &timed_out))
                     {
+                        if (log)
+                        {
+                            if (timed_out) 
+                                log->Printf ("async: timed out waiting for process to resume, but process was resumed");
+                            else
+                                log->Printf ("async: async packet sent");
+                        }
+                    }
+                    else
+                    {
                         if (log) 
                             log->Printf ("async: timed out waiting for process to resume");
                     }
@@ -379,7 +389,7 @@
             if (SendPacket(continue_packet.c_str(), continue_packet.size()) == 0)
                 state = eStateInvalid;
         
-            m_private_is_running.SetValue (true, eBroadcastNever);
+            m_private_is_running.SetValue (true, eBroadcastAlways);
         }
         
         got_stdout = false;