diff options
Diffstat (limited to 'lldb/source/Plugins/Process/Linux')
-rw-r--r-- | lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp b/lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp index 4c53346e9c7..f13b715612d 100644 --- a/lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp +++ b/lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp @@ -1298,22 +1298,19 @@ NativeProcessLinux::AttachToProcess ( if (!error.Success ()) return error; - native_process_sp.reset (new NativeProcessLinux ()); + std::shared_ptr<NativeProcessLinux> native_process_linux_sp (new NativeProcessLinux ()); - if (!native_process_sp->RegisterNativeDelegate (native_delegate)) + if (!native_process_linux_sp->RegisterNativeDelegate (native_delegate)) { - native_process_sp.reset (new NativeProcessLinux ()); error.SetErrorStringWithFormat ("failed to register the native delegate"); return error; } - reinterpret_cast<NativeProcessLinux*> (native_process_sp.get ())->AttachToInferior (pid, error); + native_process_linux_sp->AttachToInferior (pid, error); if (!error.Success ()) - { - native_process_sp.reset (); return error; - } + native_process_sp = native_process_linux_sp; return error; } |