If you have a transformation ctx.transform(2,0,0,2,0,0); before a creation of a pattern, the transformation is applied twice to the pattern, but with a normal bahavior to paths.
Created attachment 24303 [details] Pattern with transform A TestCase. You should see skewed yellow and blue boxes, not just a blue rect.
Created attachment 24305 [details] Pattern transformation Patterns don't need extra transformations, since the context is transformed itself.
My testing on the nightly shows the same behaviour in the current nightly, firefox, opera
It does appear on Qt and Cairo. Renamed the title.
Created attachment 24319 [details] Pattern transform Give a identity matrix to pattern for qt and cairo. This solves the double transformation of patterns on Qt and Cairo. I'm not absolutly sure about this. I believe it is because the context is transformed already. So you don't need to transform the pattern again.
Comment on attachment 24319 [details] Pattern transform I'm clearing the review flag so no one goes and lands this :D Basically this looks correct and per Dirk results in Gtk and Qt being correct (Cg is already correct) -- but as I said on IRC dumpAsText layout tests == win :D
Created attachment 24353 [details] LayoutTest for pattern transformations Added a LayoutTest.
Comment on attachment 24319 [details] Pattern transform This seems to make sense to me -- but i'm not a gtk/qt type person, however assuming behaviour matches firefox/opera now r=me
landed in r38299.