Thunderbird:Testing:Get A Debug Thunderbird Hang Stack
Only use this with debug Thunderbird, which produces valid debug symbols.
(from bug 494849 comment 3, tested in Leopard 10.5)
How to get a hang stack using gdb:
If you are running debug Thunderbird, either clicking Sample Process in activity manager will get a sample, or follow the following instructions :
0) Change to the debug Thunderbird directory:
cd /path/to/Thunderbird
1) Run Shredder:
./thunderbird-bin
And repeat steps to reproduce to get the hang.
2) At a Terminal prompt, find its process id:
ps ax | grep thunderbird
(The pid will be listed in the first column to the left. Let's assume it's '123'.)
3) Attach to the Shredder process:
gdb thunderbird-bin 123
4) Next, get a backtrace of all running TB threads:
thread apply all bt
5) Finally, save the output to a text file and attach it to your bug report.
Credit Steven Michaud from bug 470001 comment 23 for the original instructions.