I'm tracking down a problem and I thought I'd be smart and put a raise (SIGABRT);in my code when the error happens so I can look at the stack. The error function is part of a statically linked c library that is linked to my main program (a linux command line tool).
For some reason when this error happens the program just exits without creating a coredump when I raise the SIGABRT. For reference I have tested a simple program that just raises it and the coredump is created just fine, my ulimit is unlimited etc.
But I was thinking, after this error my thread terminates. Do I have to keep the program alive long enough fro the SIGABRT to write the dump file?