diff options
Diffstat (limited to 'source/Target')
-rw-r--r-- | source/Target/Process.cpp | 14 | ||||
-rw-r--r-- | source/Target/Thread.cpp | 1 |
2 files changed, 12 insertions, 3 deletions
diff --git a/source/Target/Process.cpp b/source/Target/Process.cpp index 40d3e4950c6d3..1256ad34c975f 100644 --- a/source/Target/Process.cpp +++ b/source/Target/Process.cpp @@ -4824,13 +4824,21 @@ public: { } + virtual void - Interrupt () + Cancel () { size_t n = 1; char ch = 'q'; m_pipe_write.Write (&ch, n); } + + virtual void + Interrupt () + { + if (StateIsRunningState(m_process->GetState())) + m_process->SendAsyncInterrupt(); + } virtual void GotEOF() @@ -4859,7 +4867,7 @@ Process::CancelWatchForSTDIN (bool exited) { if (exited) m_process_input_reader->SetIsDone(true); - m_process_input_reader->Interrupt(); + m_process_input_reader->Cancel(); } } @@ -4903,7 +4911,7 @@ Process::PopProcessIOHandler () IOHandlerSP io_handler_sp (m_process_input_reader); if (io_handler_sp) { - io_handler_sp->Interrupt(); + io_handler_sp->Cancel(); m_target.GetDebugger().PopIOHandler (io_handler_sp); } } diff --git a/source/Target/Thread.cpp b/source/Target/Thread.cpp index 72de5b8a3cf50..39f269952882c 100644 --- a/source/Target/Thread.cpp +++ b/source/Target/Thread.cpp @@ -2023,6 +2023,7 @@ Thread::GetUnwinder () case llvm::Triple::arm: case llvm::Triple::thumb: case llvm::Triple::mips64: + case llvm::Triple::hexagon: m_unwinder_ap.reset (new UnwindLLDB (*this)); break; |