<salesPitch>
rgdAnalyze extracts style data mismatches from Mozilla layout
regression test verifications into a more human-readable format.
http://fantasai.tripod.com/Mozilla/Tools/rgdAnalyze/
It's a short Perl script that will transform an intractable
frame style data mismatch: |null attr|0 0 3 3 12632256 0 0 1
1.000000|left: 0[0x0]tw top: 0[0x0]tw right: 0[0x0]tw bottom: 0[0x0]tw
left: 0[0x0]tw top: 0[0x0]tw right: 0[0x0]tw bottom: 0[0x0]tw left:
1[0x1]enum top: 1[0x1]enum right: 1[0x1]enum bottom: 1[0x1]enum left:
Null top: Null right: Null bottom: Null left: Null top: Null right:
Null bottom: Null 1[0x1]enum 0|100 100 |0 left: Inherit top: Inherit
right: Inherit bottom: Inherit Auto 0[0x0]tw Null 0[0x0]tw
0[0x0]tw Null 0 Auto |0 0 0 0 Normal Normal 0[0x0]tw Normal
10[0xa]enum |0 8 0 0 0 0 1 0 1 0 0 0 0|0 0 4 1 0[0x0]tw 0[0x0]tw
Null 0 0 -1 1 Null |0 0 0 0 Null |3 0 7 0 0 4 |0 0 0 2 2 0 Auto
vs. |null attr|-16777216 0 3 3 12632256 0 0 1 1.000000|left: 0[0x0]tw
top: 0[0x0]tw right: 0[0x0]tw bottom: 0[0x0]tw left: 0[0x0]tw top:
0[0x0]tw right: 0[0x0]tw bottom: 0[0x0]tw left: 1[0x1]enum top:
1[0x1]enum right: 1[0x1]enum bottom: 1[0x1]enum left: Null top: Null
right: Null bottom: Null left: Null top: Null right: Null bottom: Null
1[0x1]enum 0|100 100 |0 left: Inherit top: Inherit right: Inherit
bottom: Inherit Auto 0[0x0]tw Null 0[0x0]tw 0[0x0]tw Null 0 Auto
|0 0 0 0 Normal Normal 0[0x0]tw Normal 10[0xa]enum |0 8 0 0 0 0 1 0
1 0 0 0 0|0 0 4 1 0[0x0]tw 0[0x0]tw Null 0 0 -1 1 Null |0 0 0 0
Null |3 0 7 0 0 4 |0 0 0 2 2 0 Auto
into
[2,1] 0 ne -16777216
// (2nd group (between pipes), first item)
You can then easily find the name of the style property by
looking in the DumpRegressionData function in nsStyleContext.cpp.
([2,1] is Color.mColor)
It does this for each test result in the file and then
prints a list of all style data mismatches in the
verification *without duplicates* so you can quickly tell
which properties your changes have affected.
</salesPitch>
Thought you might find it useful. I did. *shrug*
~fantasai