diff options
author | Ilia K <ki.stfu@gmail.com> | 2015-03-26 07:40:40 +0000 |
---|---|---|
committer | Ilia K <ki.stfu@gmail.com> | 2015-03-26 07:40:40 +0000 |
commit | c7efd564bb07977db15949ee72a7a3369e870c2a (patch) | |
tree | 595d669ca0b6402f9a35e88314c67fe75b55c2cd /lldb/source/Target/Process.cpp | |
parent | fd3241528dde43cfcd93d60760e3861380f9ef69 (diff) | |
download | bcm5719-llvm-c7efd564bb07977db15949ee72a7a3369e870c2a.tar.gz bcm5719-llvm-c7efd564bb07977db15949ee72a7a3369e870c2a.zip |
Fix Process::Finalize to do Process::Destroy if needed after r233255
llvm-svn: 233258
Diffstat (limited to 'lldb/source/Target/Process.cpp')
-rw-r--r-- | lldb/source/Target/Process.cpp | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/lldb/source/Target/Process.cpp b/lldb/source/Target/Process.cpp index 6137b7f1b89..e8a6e87bf54 100644 --- a/lldb/source/Target/Process.cpp +++ b/lldb/source/Target/Process.cpp @@ -822,8 +822,26 @@ Process::GetGlobalProperties() void Process::Finalize() { - // Destroy this process - Destroy(); + // Destroy this process if needed + switch (GetPrivateState()) + { + case eStateConnected: + case eStateAttaching: + case eStateLaunching: + case eStateStopped: + case eStateRunning: + case eStateStepping: + case eStateCrashed: + case eStateSuspended: + Destroy(); + break; + + case eStateInvalid: + case eStateUnloaded: + case eStateDetached: + case eStateExited: + break; + } // Clear our broadcaster before we proceed with destroying Broadcaster::Clear(); |