Search code examples
xcodemacossignalslldb

Permanently configuring LLDB (in Xcode 4.3.2) not to stop on signals


I'm trying to get LLDB (running in Xcode 4.3.2 with an OS X application) to not stop on certain signals. If I enter

process handle SIGUSR2 -n true -p true -s false

on the debugging console it works fine and LLDB no longer stops on SIGUSR2.

However, if I put

command process handle SIGUSR2 -n true -p true -s false

into ~/.lldbinit it seems to be ignored. Other commands in this file (e.g. alias) work fine.

How can I make LLDB never stop on certain signals?


Solution

  • In case anyone else ever has this question, I finally solved it by adding a breakpoint in NSApplicationMain() (for plain C programs, main() would of course work as well).

    I set the breakpoint action to process handle SIGUSR2 -n true -p true -s false, and enabled the "Automatically continue after evaluating" option.

    Xcode 4 Breakpoint Screenshot

    If anyone has a more elegant solution, I'd be happy to hear.