Without this, damage is incorrectly propagated to target surfaces, because of the perspective w<0 issue. This can be reproduced on OSX using --enable-partial-swap on http://css-3d.org/space-cube-2.htm, after clicking "move inside".
Created attachment 138194 [details] Patch
A note about the unit test on this patch - I wasn't able to come up with a tighter test that allowed us to test exact values of a clipped rect. The problem is that when clipping to w < 0 does occur, the values are usually quite large, and theoretically represent infinity. So, the best I could do was to construct a case where the incorrect un-clipped implementation was very small. Please let me know if you have a better idea for creating a test that covers this change, but I think the test should be acceptable =)
Comment on attachment 138194 [details] Patch The test looks great! R=me.
Comment on attachment 138194 [details] Patch Clearing flags on attachment: 138194 Committed r114858: <http://trac.webkit.org/changeset/114858>
All reviewed patches have been landed. Closing bug.