diff options
Diffstat (limited to 'lldb/source/Commands/CommandObjectProcess.cpp')
-rw-r--r-- | lldb/source/Commands/CommandObjectProcess.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/lldb/source/Commands/CommandObjectProcess.cpp b/lldb/source/Commands/CommandObjectProcess.cpp index 181012d12f0..7329ccbb1d9 100644 --- a/lldb/source/Commands/CommandObjectProcess.cpp +++ b/lldb/source/Commands/CommandObjectProcess.cpp @@ -328,6 +328,10 @@ public: if (synchronous_execution) { state = process->WaitForProcessToStop (NULL); + if (!StateIsStoppedState(state)); + { + result.AppendErrorWithFormat ("Process isn't stopped: %s", StateAsCString(state)); + } result.SetDidChangeProcessState (true); result.SetStatus (eReturnStatusSuccessFinishResult); } @@ -336,9 +340,24 @@ public: result.SetStatus (eReturnStatusSuccessContinuingNoResult); } } + else + { + result.AppendErrorWithFormat ("Process resume at entry point failed: %s", error.AsCString()); + result.SetStatus (eReturnStatusFailed); + } } + else + { + result.AppendErrorWithFormat ("Initial process state wasn't stopped: %s", StateAsCString(state)); + result.SetStatus (eReturnStatusFailed); + } } } + else + { + result.AppendErrorWithFormat ("Process launch failed: %s", error.AsCString()); + result.SetStatus (eReturnStatusFailed); + } return result.Succeeded(); } |