Added the ability to detect which vCont packets (using the "vCont?") packet
are supported by the remote GDB target. We can also now deal with the lack of
vCont support and send packets that the remote GDB stub can use. We also error
out of the continue if LLDB tries to do something too complex when vCont isn't
supported.



git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@125433 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/source/Plugins/Process/gdb-remote/ThreadGDBRemote.cpp b/source/Plugins/Process/gdb-remote/ThreadGDBRemote.cpp
index 3708407..6acefff 100644
--- a/source/Plugins/Process/gdb-remote/ThreadGDBRemote.cpp
+++ b/source/Plugins/Process/gdb-remote/ThreadGDBRemote.cpp
@@ -93,25 +93,25 @@
     if (log)
         log->Printf ("Resuming thread: %4.4x with state: %s.", GetID(), StateAsCString(resume_state));
 
+    ProcessGDBRemote &process = GetGDBProcess();
     switch (resume_state)
     {
     case eStateSuspended:
     case eStateStopped:
-        // Don't append anything for threads that should stay stopped.
         break;
 
     case eStateRunning:
         if (m_process.GetUnixSignals().SignalIsValid (signo))
-            GetGDBProcess().m_continue_packet.Printf(";C%2.2x:%4.4x", signo, GetID());
+            process.m_continue_C_tids.push_back(std::make_pair(GetID(), signo));
         else
-            GetGDBProcess().m_continue_packet.Printf(";c:%4.4x", GetID());
+            process.m_continue_c_tids.push_back(GetID());
         break;
 
     case eStateStepping:
         if (m_process.GetUnixSignals().SignalIsValid (signo))
-            GetGDBProcess().m_continue_packet.Printf(";S%2.2x:%4.4x", signo, GetID());
+            process.m_continue_S_tids.push_back(std::make_pair(GetID(), signo));
         else
-            GetGDBProcess().m_continue_packet.Printf(";s:%4.4x", GetID());
+            process.m_continue_s_tids.push_back(GetID());
         break;
 
     default: