Difference between revisions of "Gecko:Debugging Tools"
From MozillaWiki
(→Frame Tree Dump) |
|||
Line 18: | Line 18: | ||
def frametree | def frametree | ||
− | + | call nsFrame::DumpFrameTree($arg0) | |
− | |||
− | |||
− | |||
end | end | ||
Revision as of 01:43, 4 April 2012
Contents
.gdbinit
GDB pretty printers
Printing arrays
Chris Jones' handy ptarray command
Frame Tree Dump
<bz> for a frame dump, you can use the layout debugger, or... if you're in a debugger and want to examine the tree, you can do
def frametree call nsFrame::DumpFrameTree($arg0) end
<bz> That should work when called on any nsIFrame to dump the tree it belongs to
Printing nsIAtoms
<bz> To print an nsIAtom, you see what concrete type it is using "set print object on", then cast it to that type, etc
<bz> if it's an nsStaticAtom:
def satom p *((class nsStaticAtomWrapper*)$arg0)->mStaticAtom end
<bz> to be used as: satom content->Tag() or satom frame->GetType()
<bz> for nsGkAtoms it'll work great
Reflow Logs
See [Debugging Frame Reflow]