[lldb-dev] What does this piece of hijack code do?
Greg Clayton
gclayton at apple.com
Tue Aug 19 15:16:14 PDT 2014
It will get all process events delivered to it (like the initial eStateStopped event) to make sure the attach succeeded. The it will likely re-post the event after unhijacking the process events so LLDB knows about it.
Attach either succeeds or fails immediately (when attaching to a pid or name), or waits when attaching to the next process by name. This can be interrupted by CTRL+C and there is some logic that deals with that.
Greg
> On Aug 19, 2014, at 3:04 PM, Todd Fiala <tfiala at google.com> wrote:
>
> Hey guys,
>
> In the local MacOSX debugging case when PlatformDarwin::Attach () is eventually called, what is this piece of code really doing?
>
> ListenerSP listener_sp (new Listener("lldb.PlatformDarwin.attach.hijack"));
> attach_info.SetHijackListener(listener_sp);
> process_sp->HijackProcessEvents(listener_sp.get());
>
> What will be that hijacker's responsibility?
>
> Thanks!
> --
> Todd Fiala | Software Engineer | tfiala at google.com | 650-943-3180
>
More information about the lldb-dev
mailing list