Mobile/Fennec/Debugging: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 6: | Line 6: | ||
once inside gdb | once inside gdb | ||
<pre> | |||
# | # break on fork calls | ||
(gdb) catch fork | (gdb) catch fork | ||
# | # break on exec calls | ||
(gdb) catch exec | (gdb) catch exec | ||
Line 18: | Line 16: | ||
#the first fork will be for glx probing and can be ignor | #the first fork will be for glx probing and can be ignor | ||
(gdb) continue | (gdb) continue | ||
#the next fork is the content process, make sure we follow into it | #the next fork is the content process, make sure we follow into it | ||
(gdb) set follow-fork-mode child (gdb) continue | (gdb) set follow-fork-mode child (gdb) continue | ||
#this will break on the exec | #this will break on the exec | ||
(gdb) break some_function_in_the content process | (gdb) break some_function_in_the content process | ||
</pre> | </pre> |
Revision as of 05:48, 19 May 2011
Debugging Fennec can be trickier than Firefox because it uses multiple processes.
For example to debug reftests in fennec on desktop linux the following recipe works:
python runreftest.py --debugger=gdb TEST_PATH/reftest.list
once inside gdb
# break on fork calls (gdb) catch fork # break on exec calls (gdb) catch exec (gdb) run #the first fork will be for glx probing and can be ignor (gdb) continue #the next fork is the content process, make sure we follow into it (gdb) set follow-fork-mode child (gdb) continue #this will break on the exec (gdb) break some_function_in_the content process