Diff
Modified: trunk/LayoutTests/ChangeLog (129896 => 129897)
--- trunk/LayoutTests/ChangeLog 2012-09-28 14:55:07 UTC (rev 129896)
+++ trunk/LayoutTests/ChangeLog 2012-09-28 15:24:41 UTC (rev 129897)
@@ -1,3 +1,19 @@
+2012-09-28 Florin Malita <[email protected]>
+
+ [Chromium] Incorrect resampling of clipped/masked images.
+ https://bugs.webkit.org/show_bug.cgi?id=97409
+
+ Reviewed by Stephen White.
+
+ * platform/chromium-linux/svg/custom/clip-mask-negative-scale-expected.png: Added.
+ * platform/chromium-linux/svg/custom/clip-mask-negative-scale-expected.txt: Added.
+ * platform/chromium/TestExpectations:
+ * platform/efl/TestExpectations:
+ * platform/gtk/TestExpectations:
+ * platform/mac/TestExpectations:
+ * platform/qt/TestExpectations:
+ * svg/custom/clip-mask-negative-scale.svg: Added.
+
2012-09-28 Stephen Chenney <[email protected]>
Unreviewed Chromium TestExpectation addition
Modified: trunk/LayoutTests/platform/chromium/TestExpectations (129896 => 129897)
--- trunk/LayoutTests/platform/chromium/TestExpectations 2012-09-28 14:55:07 UTC (rev 129896)
+++ trunk/LayoutTests/platform/chromium/TestExpectations 2012-09-28 15:24:41 UTC (rev 129897)
@@ -2346,6 +2346,9 @@
webkit.org/b/60094 [ Debug ] fast/encoding/parser-tests-110.html [ Pass Timeout ]
webkit.org/b/60094 [ Debug ] fast/encoding/parser-tests-120.html [ Pass Timeout ]
+# Needs results
+webkit.org/b/97409 svg/custom/clip-mask-negative-scale.svg [ Missing Pass ]
+
# Flaky since creation because we lack testRunner.setSerializeHTTPLoads
webkit.org/b/57593 fast/preloader/document-write-2.html [ Failure ]
webkit.org/b/57593 fast/preloader/document-write.html [ Failure ]
Added: trunk/LayoutTests/platform/chromium-linux/svg/custom/clip-mask-negative-scale-expected.png (0 => 129897)
--- trunk/LayoutTests/platform/chromium-linux/svg/custom/clip-mask-negative-scale-expected.png (rev 0)
+++ trunk/LayoutTests/platform/chromium-linux/svg/custom/clip-mask-negative-scale-expected.png 2012-09-28 15:24:41 UTC (rev 129897)
@@ -0,0 +1,37 @@
+\x89PNG
+
+
+IHDR X ' )tEXtchecksum af118e540de5a51e3ab33877466e0fa2<}\xDB\xE4 IDATx\x9C\xED\xDD\x8C\xA4w}\xF0\xF7\xEC\xAF\xF3\xF9,\xA5\xCD\xC58\x8688\xC22`,l\x9CRى\\xE3ʡ
+$\xD0 +(\x92\xEB\xA4
+\xD4$U\x8AbH0\x8AD\x84\xE2\x88\xFAW\xEF61
+\xAA-T \x9A\xD8Pb\xDFac\x8C]\xFC\xEBnw\xF6\xE9\x93g<\xB7\xB3;\xBBw\xF7\xD9ݙ\xD9\xD7Kh5<\xF7\xCC3\xDF_\xCFg\xDF\xF3\xCC3\xEBN\x9A\xB0\x9A\xEA\x81\xEE\xA4S{@\x86]\x9AKo\xCAM\xDB\xDD
+\x9Ef\xD9o
+\xF5j]\x94\x8Bn\xCF\xED\xDB\xDD
+\x9E6\xB3\xDD
+ \x986 @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5\xACM\xFB\xF3P\xB2\xD8>n\xB6\xB3E\x9B\xAE\xC5\xE4\xD0\xD0F`l\xA9W+6\x99\xDB\xEE\x8C\x87\xDE)\xDAI\x9Ad9ٕ$\xE9&\xB3\xED\xBFv\xB6\xADi\x9B\xA8\xE8\xF2|\x92\xA4\x9B̴\xA7\xB2\xCB0\xD4+\xF5\x8AI `
+\x9C\x9C\xBD\xB3\xC9\xC9|2d!\x9B\xA6xE\xBFf\x93C\xC9r\xB2\xBB\xFD\xD7\xCE\xC0>\xC0\xF8P\xAF\xD4+&\x84\x8F<\xD1>\xF8\xB9\xE4\xBDI\x92\xA7\x92\xEE\xB65g+,%\x87\x93$oM.M\x92t\x93\xA7\xB6\xB3E\xC0\x86\xA8WQ\xAFk;>`\xF5\xDF\xFD<\x96\xECI~\x98\xFC\xE7\xE4\xC9\xFB\x93&\xBB\x93\x99\xE4\xA9v\x9F\xE9\xF8\xB0\xBF\xD7\xE5N\xF2d2\x9F,$\xEFN\xFE4\xB95\xF9/\xC9l\xB2;y\xBC\xDDg:\xBA\xD3A\xBDR\xAF\x98;>`u\x92\xE5$\xC9I\xC9}\xC9\x92k\x92\xF9\xE4@\xF2;\xC9璙䄤۞\xC0S\xA0W\x86\xBA\xC9\xEE\xA4InIޞ<\x92\xCC&\x90|$y$ٓ,O\xDD
+0\xE9\xD4+\xF5\x8Aɱ\xE3V\xFF}\xDE\xE3\xC9\xEF&oI\x92,&\xF3\xC9w\x93K\x92;\xDA/\xE9L\xD3;\xC2$\x8B\xC9S\xC9'\x93_H\x9EJ\xE6\xDA\xC2\xFD\xBA\xE4\xC9m\xA7\xA3\xCB0\xD4+\xF5\x8Aɱ\xE3\xD6\xE1d&YJ\xFE]r\xCD\xC0\xF6\xC5\xF6\xC1K\x93$I\xA6\xE5\xEC\xED\xA6\x85\xE4w\xDB\xFB\x92,
+\xF4\xEEm\xC9e\xED\xD7sW9 \xB0=ԫ\xF5\x8AI\xB0\xE3\xBFE8\x9Bt\x92\x99\xE4\xD2\xE4瓓\x93ǒ\xAB\x92s\x93W'3\xC9\xFDɹ\xC9̴T\xAB\xB4\x9Ft\x92\xF3\x93\xB7&\xCFL\x93\x8F&$\xFF59!y yf{\xB1}\xC7'p#\xEA\x95z\xC5\xE4\xE8L\xCFyx̆?\xB9?5\xF9\xD5\xE4\xEA\x91\xFB\xF5\x8Bt\xE7x4\xFC\x95\xE6˒\xBFO\xBE6r\x9F\x9D\xE7\xD2\zSn\xDA\xEEV\xF0\xB4\xE3Z\xF6\xD3A\xBD\x8Az\xB5\xBA\x8Br\xD1\xED\xB9}\xBB[\xC1\xD3v\xFC\xAC\xC1?^w(ٕN\xBA\xC9\xFFK\xBA\xED\xD5\xE9فw\x84Sp\xF7\x8B\xEFr\xB2\xD4\xFEq\xC2'\x92\xC5\xF6;އ\x93]\xED{A\xF7\x8D\xC2\xF8P\xAF\xD4+&ǎX}3ע3\xF4x*
+\xF6\xB1\xBF%C\x81q\xA3^E\xBDb\xDC\xED\xF8\x805X\x92f\xDA\xFFu\xDA\x86\xF7\x99\x9D\x813m7\xBB<s\xE4>\xC0\x98P\xAF\xD4+&\x87{ \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (6\xF6\xABiJ\x96\xDA\xC7\xCDv\xB6\x88cԟ\xB5\xC3\xC9ᡍ0ԫ\xA9\xA1^q\xDC涻k\xEB-\xE5N[\xA1v\xB5\xDB;\xDB\xD6"\x8EK\xE2\x92$\xDDd\xA6\x9D_sʤS\xAF\xA6\x8Cz\xC5q׀\xD5_Ľ\x9Dd1\x99If
+\x93\xA5?\xA7\xBDw\xF6s\xCD)M\xBD\x9A>\xEA\xC7m\xEC?"|\xBC}\xF0o\x93\xF7&I\x96]\xA7\x9DL\xDD\xF6\xC1k\x92\xD7%I\xAE\xBD\xC3P\xAF\xA6\x86z\xC5q\xCB+X\xFDw O$'%\x8F&\xBF\x9D\xFC\xAF\xE4\x82\xE4P\xD2M:\x9B\x93%I\xEFԂ\xB8\xBC\xC9#\xB0\xD4֬\xFF\x9B\xFCmrfrE\x92\xE4\x89\xE4\xC4$\xAE\xBD3\x99ԫm\xA1^1\xF6\xC62`\xF5?\xE7ޓܗ\xFCY\xF2\xBEd>9o\xE0ΆͰ\xAB\xFD9\xB7\xF3jV\x93,\x8C\xC0f\xE8\xF6\xFC\xE4ɕ\xC9\xC9˒\x93\xE5\xF6\x83\x988\xEA\xD5\xD6S\xAF\x98c\xB0\x9Ad9\x99I\x96\x92\xDFI>\xDC\xDE\xD3p_rx\x93\xDF\xEEJ'\x8B-\x99n\x83<\xD4^ ?\xDC\xDE\xD7Yk\xA9]n\xF7\xB5[.M>\x96\\x96,'\xF3\xDE2\x99ԫ-\xA3^1Q\xC62`\xF5
+\xC7\xC9%ɗ\x93\x99\xF6\xBC\xBA*y\xF7f.\xEB\xE5d.\xE9&%'m\xCEK\x8C\xAD=\xC97\x93g\xB7\xBF-6c\x84\xFB\xF7\xE8\xC0\xC6\xDFL\xFEwrM\x92\xA4;\xA6\xEBFQ\xAF\xB6\x9Ez\xC5$\xCB\xD2\xFB\xEA\xCD\\xF2\xF3\xC9\xFD\xC9=\xC9Br89'9w3\xBF\xC1\xD1?\xE6\x8F'?\x97d\xBEp\xBC\xFA|mrf\xF2`\xFB7\xE3\xAD\xF0r\xFBr\xB7%\xDFJf\x92n\xF2\xA2\xE4\xFC\xA4\x9B\xCCz;\xC8dR\xAF\xB6\x8Cz\xC5Dˀ5\x9Ft\x93]\xC9o'\xA7%W'w%\x9D\xE4
+\xC9/omK\xA6\xFE\xEA\xAC\x8B\x93\x8B\xB7\xEAEߐ\xBC?\xE9&\xFF*\xF9\xA3\xE4\x85\xC9\xE1d6\x99ݪ@!\xF5j˨WL\x94\xB1XM2\x9B,'\x87\x93\xD7$\xA7'?\x97t\x93\xEF%˛yOà\xCE\xCE\xF8{'\x83\xBFg\xB3o\xE0\xE8\xDF\xD3\xF0X\x92\xE4'\x93[\x93\x93\x93'\x93\xDDG6&\x88z\xB5e\xD4+&\xCA_S\xEE\xB4\xEB\xFB\xDF$\xFF3Ir\xD7v6\x872\x97<3\xF9Lrr\x92A\xB6\x98z5\xAD\xD4+\x8E\xD5X^\xC1\xEA\xEDy\xAE}\xBBpa\xF2\xC9\xDA@\xB8e_\x91\x9D\xFA7(\x9D\x81\x9B\xDDٹv\xFAސ\xECN\xCEJ\xBA\xDF\xC7\xC9m\xA6\x92z\xB5e\xD4+&\xCAX\xAC\\xEEޝt\x93n\xF2\xC6\xF6\x9F\xC6\xF8\xA2\xA3\xF4'\xEE5I\x92C\xC9B{\x83\xB0R\xC5DS\xAF\xA6\x8Fz\xC5q׀\x95\x81\xCF\xDAg\xBE\xF9\xBC\xEE3\x98V\x83\xF7O\xA4\xFD;~\xAA\xD3A\xBD\x9A2\xEA\xC7mr\xDE^M\xFD\xDF\xD0\xDB9\xB6\xE0U\xD8^V\xF8\xD4P\xAF8Vc|\xAB\xA7\xD3\xFE\xEC\xB9\x85\x89ӟ\xB8\x99\xD56\xC2P\xAF\xA6\x86z\xC5q\x9B\x9C+X B\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (\xD6i\x9Af\xBB\xDB 0U\\xC1 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xEB\xA4\xD9\xEE&\xECM\xF5@wҩ= \xC3.ͥ7\xE5\xA6\xEDnO\xB3췆z5\x89.\xCAE\xB7\xE7\xF6\xEDnOs \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 Pl\xECV\xD3\xFE\xEC&\xCB\xED\xE3f;[\xC41\xEA\xCF\xDAr;\x951\x95L\xF5jj\xA8W\xB7\xB9\xEDn\xC0\xDAzK\xB9\x934I'\x99m\xB7w\xB6\xADE\x97\xFE\xC4\xF5R\xFD\x8A\xF9\x85\x89\xA6^M\xF5\x8A\xE36\xF6W\xB0\x924\xC9\xE1\xEDn\xE5\xCC)SI\xBD\x9AJ攣7\xAE\xAB\xF7.\xA1\x93<\x91\xCC$\xC9o'\x9FLr\xE4[&H\xB7}\xF0\xDE\xE4\xC3ɮ\xA4\x9Bn\xDF\xBA\xF6\xCE\xE4R\xAF\xA6\x8Fz\xC5qˏ\x9Bv/%'&\x8B\xC9g\x92\xFF\x96\xBC!\xF9\x85\xA4\xDB\xFE\xEB\xA6\xEA$3\x97\x85\xA7U\xFFr\xF7\xF2\xE6\xE9R\xFB\xE0ϒ\x83\xC9\x93\x92$\x8B\xC9\xFC\x91\x8D\x81 \xA2^m\xF5\x8A\x892\x96k\xB0-%\xB7%\xAFL:\xC9\x92\xD9df\x97\xF5ԟ?+\xEE3\xD8\xEC\xD7\xEA\xBDʿN\xFE>yE\xF2\xB7ɳj\xE5ԏ6SI\xBD\xDA2\xEAe\?"\N:\xC9|\xF2\xC1\xE4uI\x92&9)\x89e=\xB1\xFAk\xADw\xFF\xEFC\xC9%\xC9\x93]\xC9\xE2\xB65
+
+\xA8W\xD3G\xBD⸍\xE5\xAC\xC3\xC9\\xF2d\xF2\xE6\xE4\xA6\xE4\xBB\xC9|\xB2\x98\xBC;ٷ\x99f;\xED\x9B\xD1g&\xAFJ^\xD2\xDE<1\xAE)\xB4\xC0rۻ\xBFLnK\xBE;\xF0=\xF3r\xFD\x89\xFB\x9Bv\xA8\xBF\x95\xBC.yM\xF2\x9BI\x92\xEE\xC0w\xAF`R\xA8W[F\xBDb\xA2\x8Ce\xC0\xEA\xAD\xEC\xE5\xE4\xAE\xE4\x87I\xDA\xFB
+\xEFOm\xE6\xE5\xD9\xE5d6\xE9&\xFB\x92\xF9\xE4%;\xE0N\xC6~\xC1\xFA\xEF\xC9\xF5\xC9\xF3\x92f`c\xAD~\xC1zt``\xEFO\xB4ۧ~\xB4\x99J\xEAՖQ\xAF\x98(c\xB0v%Kɞ\xE4\xB6\xE4\xCD\xC9{\xDBK\xB2\xBF\x93\xBC~K\xF0\xCC\xE4P\x92py\xBF\xDF\xC1\xC3\xC9Y\xC9\xE4E-\xF9\xB3\xA4Iv%N~)9\x94̏\xE9b\x84u\xA8W[F\xBDb\xA2\x8C\xEB\xD5\xE4\xD9\xF6\xFD\xC1[\x92\xF7%I\xE6\xDB{\xB6\xC0\xFC\xEEVv\xF9_$If\x92ے\x97'I\xE6w\xC0\xEF\xA6\x98z\xB5\xC5\xD4+&\xC1X\x86\xF0\xFEמ\x9FL\xFEery\xF2H\xF2\x96\xE4\xEF\x92_n\xBF\xF6\xBC\xC9\xF0P\xB2+9ܾĎ\xD2i\xFF\xCAK\x92\xC3\xC9\xC2&\xBC\xC4R\xBBܾ\x90\xECN>\x98\\x94$y*9!\x89\xAF=3\x99ԫ\xAD\xA7^1 \xC62`\xF5\xFFs\xBB\x93ǒ\x93\x92+\x93/%g&\x9BY\xB0\x9A\xF6Dݙ\xA7Mg\xA0NmF\xC1\x9Am\xEF =?yI\xF2k\xC9b\xB2\x9C\x9C\xE0k\xCFL2\xF5j[\xA8W\x8C\xBD\xB1X\xF8\xD32'\xB5\xB71\xFE\x8F\xF6\x9F|qcB\xF5'\xAE\xF7J7\x99\xF3\xDF\xF6b*\xA8W\xD3G\xBD⸍\xEB=X+LH39
+\xE6\x94iemOs\xCA\xD1\xE3U\xD39\xF2\xED\xC2b\xFB\xE5\xE7xG\xE7t\xFCk\xD7KC\xF3M\xBD\x9A2\xEA\xC7m\?"\xEC\xEB\xB4?\xE7\x8F\xDC\xC2\xC4\xE9O\xDC\xDCja
+\xA8WSC\xBD⸍\xF1, \x80\xC9$` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\xD8\xDCv7`\xBB5I'i\x92n\xB2\x94\xCC&KI\x93,'K\xC9r\x92d.\x99I\x9A$Ig;[\xA3i{\xD1m;\x9Bd9i\x92\xA5$\xED8\xCC\xB93\xB0\xED\xD4+\xF5\x8Aɱ\xE3V\xA7='\xE7\x92\xD9\xF6A\xEF\xE7\xE0\xD8L\xD3y\xDBi\x8BT\xBF*\xA5-\xCAs\xED\xE3LQ\x81\x86\xA9\xA1^\xF5\xA8WL\xE8<\x98\xDFΆl\x83Y\xB5 &\x8Az\xE3m\xC7_\xC1:\x9C,$K\xC9J~\x90\x9C\x92\xFC0y$\xF9\xCB\xE4\xA1d.\xB97\xB9<\xF9\x8FI\x934S\x91H\xBB\xED\xC1?J\xFE2\xF9\xC9\xE4P\xF2\xF9\xE4\xD1\xE4\xB2dO\xF2\x9D\xE4\xCC\xE4=I\x92ŝW\xBBal\xA9W\xEA\x93c\xC7\xAC\xB47.t\x93Ol\xBC;\xB9;IrF\xFBa\xFF\xEC*O\x9DT\xBD{8\x9A\xE4\xFF$\x9F\xD8\xFE\x89$ɉ\xC9ɲ\xF7\x880~ԫ>\xF5\x8A\xF16op\x8E\xCFB\xD2$sɵ\xC9{\x92\xBDI\xDAK\xEEs\xC9O&\xB7'\x97'KIgZF\xABWy\x97\x92\xDFLnM\x9E\xD9\xDE\xCD\xD0\xEB\xDD3\x92?M\xDE۾\xF6vƇz\xA5^19\xA6\xE3<>3\xED\xD7p^\x9F|\xA8ݲ\x98\x9C\x91|1yV\xD2Mvms\xEB\xEDJ\xBA\xC9\xD9\xC9瓓\xDB\xEF\xE3$\xB91\xF9\xA5d9\x99\xF1\x8EƏz\xA5^1!v|\xC0\xEA\xDDf1ٝ\xFC\x87\xE4\xE3I7\xF9\xE9\xE4\x9A\xE4\xC7\xDBZ\xD6i\xDF!M\x81^\x97;I7Irz\xF2\xF1\xE4\xF4d9\xB9!\xB9(YH\xDB}\xA6\xA3\xCB0ԫ\xD3\xD5+&Ǝ\xBF\xAB\xFF\xB5\xE7]\xC9ɉɯ&\x93\\x9C\xBC$y"YH\xE6\xA7\xF4kϽ´\x9C\xFC\xFB\xE4\xCA\xE4\xDB\xC9/'\xCB\xC9\xE1\xE4_{\x86\xF1\xA3^\xA9WL\x8E\xB02p\x9F\x98,'\xDD\xE4I\x92\xC5\xE4\xC4$\xD3U\xADzz\xDDi\xDAZ\xBC\x98\xBC.Ir8\x99o\xABՔu\xA6\x83z\xA5^1!v\xFCG\x84+t2\xE7\xCE \x9F\xFD\x9E\xBAE&\x88zcl眔#\xF5\xDF!u\xDA/9w\x92\xD9i\xBF\xEC\xDCx\xE7\xD7m\xBF\x9Doa\xBC\xA9W\xEA\x93@\xC0\xD0i\xCE\xB9e\x8A\xF5;8\xBB\xDAF`l\xA9W+6\xF1! @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5\xE6.ͥ\xDB\xDD\x8E\x85\x89\xDB\xE4\x82\xEDnG\xB8(mw8&n\xFCt~z\xBB\x9B\xC0:M\xD3lw \xA6\x8A\x8F \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b3\x9D\xD5$\xB9\xF5\xD6[\x9F\xFB\xDC\xE7?\xE1\xC2/\xDC\xF2F\x8E\x85\xB5\xE4hmp _\xEE\xA8Ƽ\xAA\x9D\x85n\xBE\xF9慅\x85]\xBBv\xBD\xEDmo\xDB\xEE\xB6L\x8F\xFED\x8Fጯ\xEAh\xDB9\xBC\xEC'\xA5\xA7k\xD9\xF8\x89<\xB6ev\xF3\xCE\xE5I\x9F\\xD6I\xF2\xE9O\xFA\xE5/y\xA7\xD3i\x9A\xE6\xE6\x9Bo~ի^\xD54\xCD)\xA7\x9C\xF2\xE0\x836Ms,\xEDt\x8E\xEA\x89G\xBB\xFF\xB68\x9EY\xD5\xE8^\x9F|\xF2\xC9=\xF4\xD01\xBCܩ\xA7\x9E\xFA\xC0T\xB5\xB3djn\xB8\xE1\x86\xF9\xF9\xF97\xBE\xF1\x8D\xDF\xFC\xE67KF\xA2kg|\xF3\xF3\x92\xEE/\xC2\xF2sp\xACLD,?\x97\xA7{r'bN\xD9<\x9Dw\xBD\xEB]ozӛfgg{K\xA1\xDB\xED\xFE\xFE\xEF\xFF\xFE\x95W^y\xE8СN8\xE1\xC7\xFE\xF5\xB3\xCF>{\xE3O<\xDA\xFD\xB7\xCB1Ȫ\xD6\xED\xF51\xBF\a;\xAB\xA6F\x95\xD9\xFD\x89\xAE]\x99\x9B\xE7\xD8\xDA9\xB8'\xA5\xA7\xC7`R\xCA`\xED\xB9<ݓ;)s\xCA&jZ\x83\x8F\xFB[\xBE\x{1B5BDD}w\xDEy\xFB\xF7\xEFo\x9A\xE6\x96[n9\xF3\xCC3{\xFF\xBA\xFF\xFE={\xF6\y\xE5\x95+\x9E\xF8\xFC\xE7?\xBFw\xE4?\xFF\xF3?o\x9A\xE6\xFE\xE1\xCE:묽{\xF7\xDEq\xC7\xAB>q\xC5\xFE=\x9F\xF9\xCCg\xCE:\xEB\xAC\xFD\xFB\xF7\xFF؏\xFD\xD8\xFC\xFC|\xEF՛\xA6ٷo\xDF\xDC\xDC\xDC\xE0\x96\xE1foY\xB7
+=\xEF\xFF\xFB\x93\xBC\xE4%/i\x9A\xE6Y\xCFzV\x92\xB9\xB9\xB9_\xFF\xF5_O\xF2\x9C\xE7<g\xD5>\xF8\xAD\xB7\xDE\xFA\xBC\xE7=\xEF\xDF\xF8Ƌ_\xFC\xE2\xC1\xDDz\xFA\xB8j\xAF{
+\x9B\x9F\x9F\x9F\x99\x99\xF9\xE0?\xD8kۈ1_k\x94\xFA\x9D\xAE\xFB\x{FFFF}\xF7\x8AW]uU\xD34W\qE\x92\xBC\xE0\x99\xCA\xCB/\xBF|\xF4\xC8\xF4\x9A\x9Dd\xB0\xFD\xC6.\xB6\xE1=\xD7a\xFFqo\xBF\xF4\xA5/\x9Dw\xDEy͑V\x9D\xF1\xDE1\xAF\xBF\xFE\xFA\xCB/\xBF|\xADc\xAF\x9F\xAF2\xBCNV\xCCK\xBF#\xBBw\xEF^\xF1\xDC
+\xF6k\xAD)[k
+
+/\xFE\xC1\xE3m\x83\x87;{T+y\xAD\xC1\xDExI\xF7\x8C>\xDD\xD6:SV=G7\xA9\xD7\xE5\xD1\xF3\xB5\xD6\x8D\x98\xD0\xEB\xA1ߣUj\xB0\x9B\xA3\xF7\ur\xD7\x84u\xFB\xB5\xC1\xD1_f}\xEB\xAE\xFF\xDE\x9F\xFD\xECg\xF7\xEE\xDD\xFB\xE67\xBF\xB97D+\xA6l#\x93\xBB\x8Dge\xDF\xC1\x83/\xB8\xE0\x82={\xF6\xFC\xDE\xEF\xFDު\xADZwN\xD7zʪ%\x8E\xA9\xB1N\xC0\xFA\xF8\xC7?\xFE\xC3\xFE\xB0\xB7L\x9B\xA6y\xC63\x9E\xD1\xDFmaa\xE1\xC6o\xBC\xF9\xE6\x9BW}b\xFF\xF1K_\xFA\xD2\xCF}\xEEs_\xF9\xCAW.\xB8\xE0\x82\xB5\x9E8|\x84\x93O>9\xC9m\xB7\xDD\xD6\xEDv\xFB\xAF\xDE4\xCDi\xA7\x9D\xF6\xC9O~rp\xCB\xF0ц\xB7l\xA4
+M\xD3:t\xE8\xCE;\xEF\xFCٟ\xFD٦i\xBA\xDD\xEEI'\x9Dt\xF0\xE0\xC1;\xEF\xBC\xF3\xDCs\xCF]k@\x86\xDE\xA2k\xAF\xBD\xF6\x91Gܭgp W\xFDU\xDA;\xBD\xBB\xDD\xEE\xBE}\xFBz;\x8C\xF3\xB5F\xA9\xBF\xFF\x8A\xE1\xBA뮻N?\xFD\xF4\x87~\xB8i\x9A\xBB\xEF\xBE\xFB\xF9\xCF\xFEc\x8F=\xB6\x91\xA9\wd\xFAUi\xB8\xCB+z:\xBC\xE7?\xFD\xD3?\xF5w\xF8\xC7\xFC\xC7\xDE\xE3\xBD{\xF7&\xB9\xF1\xC6\x87\x87h\xB8\xB5\xFDA\xBB\xEC\xB2\xCBzW=\xE6\xF0\x80\xACx\x95\xE1u\xB2\xA2ً\x8B\x8B\xD7]w]\xEF7ӊ\xE7n\xB0_kMو)\xE8^\xFC#\xD6Һ
+\xEE\xECQ\xAD\xE4\xE1\xF6\xAC\xB5\xFF\xF0\x92\xEE\xBD\xA8\xD6:SV=\xD7j\xD2`\x97G\xCF+|\xAD ZkB\x87\xD7C\xBFGk
+T\xFF\xC8\xEB\xEE9<\xB9k
+º\xFD\xDA`\x89\xFFރu\xD7\xAF\xF1w\xDCq\xC7W\xBE\xF2\x95O<\xF1\xAF\xFE\xEA\xAF\xF6\xED\xDB7\xBA8l\xA4\xC0\xDA쳲|\xE5\xFE\xE18p\xE0E/zѪ\xADZwN\x87\x9F2\xA2\xC415\xD6 X+?\xF1\xC4\xFD\x8D\x97\r\xC9\xCB^\xF6\xB2\xBF\xF8\x8B\xBFX^^\xF1\xC4={\xF6\xF4R|\xEF\xF2\xEF\xAAO~\xE9\xC7|\xF8՛#߲\xACu\xB4\xE1-iC\xDF%\x97\\xF2\xE0\x83~\xEAS\x9F\x9A\x99\x99\xB9\xE5\x96[^\xFF\xFA\xD7\xE2\x9FXk@\x86\xFE\xD4SO\xAD\xBA[\xCF\xE0 \xAE\xFA\xAB\xB4\xBF\xF1СC\xEB\x8E\xF9Z\xA34b\xB8\xAE\xBA\xEA\xAAw\xBC\xE3M\xD3\xFC\xD6o\xFD\xD6{\xDE\xF3\x9EuGc\xF0\xF8G;2\xABn\xDD\xE0\xFE\xE3\xC38h\xC4\xFA9|\xF8\xF0\x88cȊW^'}?\xF2#?\xB2\xA2R\x8F\x98\xE8mXk\xCAFLA\xDF\xF0l\x8EXK\xEB6x\xB8\xB3G\xB5\x92\x87۳\xD6\xFE\xC3Kz\xD0Z\x8Bj\xAD3嘛\xB4\x91\xF9\xB1\xC2ך\xA0u\xCF\xC1\xFE\xE3~\x8F\xD6\xA8u\xF7\x9E\xDC\x830\xBA_,\xC3mXw<W\x9D\xC1c(\xDBxV\xF6\xEDٳgE\xD0\xDC\xE0\xC92\xE2\x8CQ\xE2\x98G\xFD{\xB1\xFF`iii\xFF\xFE\xFD^x\xE1\xAF\xFCʯ\x8Cx\xE2\xAE]\xBB\xBA\xDD\xEE\xE0\xBF?q\xD5u\x96d\xF87\xE8\xE0\x95\x8E6\xBCe#m\xE8\xBB\xF6\xDAk\xF7\xED\xDBw\xF9嗿\x{1B5BFD}\xE2\x8A+\xCE>\xFB\xEC\xC5\xC5\xC52|\xF0
+\xA6\x8D\xB5z\xDD{p\xD7]w%9t\xE8\xD0\xE8ή:J#\x86\xEB\xE1\x87~\xF6\xB3\x9F\xFD\xE0\x83\xFE\xC4O\xFCD\xEF}\xEA\xE8\xD1l\xE4ю̺\xB2V\xC9[\xD1\xEB\xB4F\xC2\x8F9< \xA3\xD7j\xDF;\xDF\xF9\xCE\xD3N;maaa\xD5O莶_\xC3S6b
+\xFAF4~x\xCC\xD7m\xF0pg\x8Fv%\x8F\xCCፃK\xBAo#\x8Bj\xE3k\x83MZ\xEB\xF1\x88ƌ>GF\x9C\x83\xABn\xDC\xE0/\xFE\xB56\xAE:\xB9#aD\xBF6X"F\x8F\xDB\xC6\xFB{\xC5a\xCFʾݻw\xFF\xFB\xDFܲ\xC1\x93e\xF4'`M\xBD\x9E\xE0\x83&9x\xF0`\xFF\xEE\xB9\xE7\x9E$\xDF\xF9\xCEw\x9A\xA6y\xE0\x81\x928p\xE0\xDE{\xEFMr\xEF\xBD\xF76M\x93\xE4\xC6o\xBC\xEE\xBA\xEBv\xEDڵ⠝N\xE7?\xF8\xC1\xBF\xF8Ŧi.\xBA袿\xFE\xEB\xBF>p\xE0\xC0s\x9F\xFB\xDC~ɡ'\xEE\xFFt˒\xAB\xAF\xBEz\xF8\xC2\xFB\xBE}\xFB\xBE\xFC\xE5/'y\xF2\xC9'W=\xDA\xA1\xEF\xB1\xC7{\xF5\xAB_\xFD\xE1\xF8#\xF9\xC8\xEEݻ\xDF\xF7\xBE\xF7\x8D\x90\xE1\x83\xFB\xDB\xDF\xEE\xEFv\xDF}\xF7\xF5w\xEB\xC0U{ݯo}\xEB[\x93\x9Cr\xCA)\xA3\xC7|x\x94z\xFB\xF7\xA6rx\xB8\x9A\xA6y\xCB[\xDE\xF2\xE2\xBF\xB8w\xAFҺ\xA31\xD8ȵF\xA6\xF9\xE1\x81\x92\xDCw\xDF}#\xF6\xECm\xFC\xFE\xF7\xBF\xFF\xCEw\xBE3ɩ\xA7\x9E\xDA{֊_\xC6k\xB5\xB6\xF7\xF4G}\xF4ꫯ^.\x8F9< +^ex\x9D\xBE\xE8\xDDw\xDF=ܯ\xFEs7دU\xA7l\xF4\xF2`\xE3\xFB=8\xE3o\xF0pg\x8Fj%\xB7g\xAD\xFD\x87\x97\xF4\xE0A\xD6ZT\xAB\x9E)k\x9D\x83k5i\xB0\xCB\x99\xAF+|\xC4\xADU\xA9V\xBFߣ\xB5\xAA\xDF\xCDu\xF7\x9E\xDC\x830\xBA_,=\x83\xE7\xF2\xBA\xE3\xD9\xEBE\xAF\xF1\x83\xEE\xB9\xE7\x9E\xC1c\xAE;\xB9\xDBxV\xF6]|\xF1\xC5\xFAЇ<ؿv\x83'ˈ_\x85#JSc\xF5\x8B+\xB6dHo\xE3G?\xFAѓN:i\xF8-\xD4+^\xF1\x8ASO=\xF5[\xDF\xFAV\xD34_\xFD\xEAW\x9F\xF3\x9C\xE7\xFC\xE8\x8F\xFE\xE8\x9F\xFCɟ\xF4\x8F\xBC≃\xFB6\xE0]\xEFz\xD7\xEC\xEC\xEC\x8A[G\xF7\xEE\xDD{\xC3
+7\x9Cy\xE6\x99ozӛV=\xDAaл\xDF\xFD\xA5\xCF\xFE\xF3{\xF7\xEE}\xFC\xF1\xC7G\xC8\xF0\xC1\xD7\xDAm\xF8 \xAB\xF6\xBAwz\x9Fx\xE2\x89\xFB\xD8\xC7\xCE8\xE3\x8CO\xFAӣ\xC7|x\x94\xF7\xAE\xA6i\xBE\xF7\xBD\xEF-,,|\xE1_l\xD5F\xA6r\xAD\x91iV\xBB\x99t\xD5.\xAF\xB5\xE7\xFE\xFD\xFB\xCE=\xF7\xDCo|\xE3g\x9Ey\xE6-\xB7\xDC\xD2{\xCApI]\xB5\xB5\xBDc\x9E\xFE\xF9\x83sx@V\xBC\xCA\xF0:\xE9\xBB\xF8\xE2\x8B{\xAE\xD7\xF2O}\xEAS+\x9E\xBB\xC1~\xAD:eÝz\xE1_\xF8\x8B\xBF\xF8\x8B+ڰj\xE3W\x9C\x95o\xF0pg\x8Fj%\x8FhO3\xB4W,\xE9\xFDZ\xF7t\xEB/\xC2ckR\xAF\xCB\x99\xAF\xB53<A\x83V\x9D\xD0\xE1\xE3\xAF:_\xA3\xBB\xB9֞Ó;bF\xF7k\x83%bxR\xD6\xCF\xE1\x9D\xF4\xAD;\xB9\xDBxV\xF6}\xF5\xAB_\xFD\xA9\x9F\xFA\xA9\xD3O?\xFD\x8F\xFF\xF8\x8F\xFB[6r\xB2\x8C\xF8U\xB8\xA2\xA9?\xF33?\xD30u\xC6\xF7\xE5\x8A\xF3\x90U\xC3(\xDDy\xE7\x9D\xE7\x9Cs\xCEf4flҲ9\xE5\x94Sze\xB7\xDB\xED^w\xDDu\xC7|\xA8\x8D\xB4\xF0\xA1\x87꽱>f\x85
+f\xB4\xAD\xAFT\x9B=\xB9\x93R"\xB6\xF8\xAC\x84\xA35\xA6\xFF\xA9\x9C\xEF~\xF7\xBBIz\x8AY\xCB1\x8C\xD2\xD2\xD2\xD2;\xDE\xF1\x8E\xDF\xF8\x8D\xDFشFm\xA7\xDE\xC5\xF9\xDE\xCFZ?\xFCp\xEF\xC1\xCC\xCCL\xEFC\xA2c;\xCE\xA7\xEC\x9Ak\xAE\xB9\xFE\xFA\xEB\x8F\xED%z\xAA\xCCh\xDBR\xA96ur'\xA8Dl\xF1Y Gm{\xF3\xDDZƼyc\xE2hG\xE9\x9Cs\xCE9\xF9\xE4\x93\xDF\xFE\xF6\xB7oj\xAB\xB6\xD1\xE6-\x9B\xC1/[\xAD\xFA!\xC2m\xD9®j0\xA3mK\xA5ڼɝ\xAC1qg%;\x8D?\xB1
+ PlL?" \x98\ @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1\xFE\xC2\xC3 \xBBIDAT \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 PL\xC0 (&` \xB0 \x8A X \xC5, \x80b @1 \xA0\x98\x80 P\xEC\xFF\xD60*\xF8,\xCB IEND\xAEB`\x82
\ No newline at end of file
Added: trunk/LayoutTests/platform/chromium-linux/svg/custom/clip-mask-negative-scale-expected.txt (0 => 129897)
--- trunk/LayoutTests/platform/chromium-linux/svg/custom/clip-mask-negative-scale-expected.txt (rev 0)
+++ trunk/LayoutTests/platform/chromium-linux/svg/custom/clip-mask-negative-scale-expected.txt 2012-09-28 15:24:41 UTC (rev 129897)
@@ -0,0 +1,46 @@
+layer at (0,0) size 800x600
+ RenderView at (0,0) size 800x600
+layer at (0,0) size 800x600
+ RenderSVGRoot {svg} at (0,0) size 667x404
+ RenderSVGHiddenContainer {defs} at (0,0) size 0x0
+ RenderSVGResourceClipper {clipPath} [id="clip"] [clipPathUnits=userSpaceOnUse]
+ RenderSVGPath {path} at (280,280) size 120x120 [fill={[type=SOLID] [color=#000000]}] [data="" 10 10 L 100 10 L 100 100 L 10 100 Z"]
+ RenderSVGResourceMasker {mask} [id="mask"] [maskUnits=objectBoundingBox] [maskContentUnits=userSpaceOnUse]
+ RenderSVGRect {rect} at (280,280) size 120x120 [fill={[type=SOLID] [color=#FFFFFF]}] [x=10.00] [y=10.00] [width=90.00] [height=90.00]
+ RenderSVGImage {image} at (280,280) size 267x267
+ RenderSVGContainer {g} at (146,146) size 121x121 [transform={m=((1.00,0.00)(0.00,1.00)) t=(-100.00,-100.00)}]
+ [masker="mask"] RenderSVGResourceMasker {mask} at (10,10) size 90x90
+ RenderSVGContainer {use} at (146,146) size 268x268
+ RenderSVGImage {image} at (146,146) size 268x268
+ RenderSVGContainer {g} at (0,0) size 120x120 [transform={m=((-1.00,0.00)(0.00,-1.00)) t=(-100.00,-100.00)}]
+ [masker="mask"] RenderSVGResourceMasker {mask} at (10,10) size 90x90
+ RenderSVGContainer {use} at (0,0) size 121x121
+ RenderSVGImage {image} at (0,0) size 121x121
+ RenderSVGContainer {g} at (0,146) size 120x121 [transform={m=((-1.00,0.00)(0.00,1.00)) t=(-100.00,-100.00)}]
+ [masker="mask"] RenderSVGResourceMasker {mask} at (10,10) size 90x90
+ RenderSVGContainer {use} at (0,146) size 121x268
+ RenderSVGImage {image} at (0,146) size 121x268
+ RenderSVGContainer {g} at (146,0) size 121x120 [transform={m=((1.00,0.00)(0.00,-1.00)) t=(-100.00,-100.00)}]
+ [masker="mask"] RenderSVGResourceMasker {mask} at (10,10) size 90x90
+ RenderSVGContainer {use} at (146,0) size 268x121
+ RenderSVGImage {image} at (146,0) size 268x121
+ RenderSVGContainer {g} at (400,0) size 267x267 [transform={m=((1.00,0.00)(0.00,1.00)) t=(300.00,0.00)}]
+ RenderSVGContainer {g} at (546,146) size 121x121 [transform={m=((1.00,0.00)(0.00,1.00)) t=(-100.00,-100.00)}]
+ [clipPath="clip"] RenderSVGResourceClipper {clipPath} at (10,10) size 90x90
+ RenderSVGContainer {use} at (546,146) size 254x268
+ RenderSVGImage {image} at (546,146) size 254x268
+ RenderSVGContainer {g} at (400,0) size 120x120 [transform={m=((-1.00,0.00)(0.00,-1.00)) t=(-100.00,-100.00)}]
+ [clipPath="clip"] RenderSVGResourceClipper {clipPath} at (10,10) size 90x90
+ RenderSVGContainer {use} at (253,0) size 267x121
+ RenderSVGImage {image} at (253,0) size 267x121
+ RenderSVGContainer {g} at (400,146) size 120x121 [transform={m=((-1.00,0.00)(0.00,1.00)) t=(-100.00,-100.00)}]
+ [clipPath="clip"] RenderSVGResourceClipper {clipPath} at (10,10) size 90x90
+ RenderSVGContainer {use} at (253,146) size 267x268
+ RenderSVGImage {image} at (253,146) size 267x268
+ RenderSVGContainer {g} at (546,0) size 121x120 [transform={m=((1.00,0.00)(0.00,-1.00)) t=(-100.00,-100.00)}]
+ [clipPath="clip"] RenderSVGResourceClipper {clipPath} at (10,10) size 90x90
+ RenderSVGContainer {use} at (546,0) size 254x121
+ RenderSVGImage {image} at (546,0) size 254x121
+ RenderSVGText {text} at (-200,91) size 484x12 contains 1 chunk(s)
+ RenderSVGInlineText {#text} at (0,0) size 484x12
+ chunk 1 text run 1 at (-200.00,100.00) startOffset 0 endOffset 120 width 483.75: "This test passes when it displays two four-square groups, all green and with arrows pointing away from the group center."
Modified: trunk/LayoutTests/platform/efl/TestExpectations (129896 => 129897)
--- trunk/LayoutTests/platform/efl/TestExpectations 2012-09-28 14:55:07 UTC (rev 129896)
+++ trunk/LayoutTests/platform/efl/TestExpectations 2012-09-28 15:24:41 UTC (rev 129897)
@@ -481,6 +481,9 @@
# CSS Filters support not yet enabled (needs ENABLE_CSS_FILTERS).
webkit.org/b/85465 css3/filters [ Skip ]
+# Needs results
+webkit.org/b/97409 svg/custom/clip-mask-negative-scale.svg [ Missing Pass ]
+
# Needs rebaseline after bug 97217 is fixed
webkit.org/b/97325 css3/masking/clip-path-circle-relative-overflow.html [ ImageOnlyFailure Pass ]
Modified: trunk/LayoutTests/platform/gtk/TestExpectations (129896 => 129897)
--- trunk/LayoutTests/platform/gtk/TestExpectations 2012-09-28 14:55:07 UTC (rev 129896)
+++ trunk/LayoutTests/platform/gtk/TestExpectations 2012-09-28 15:24:41 UTC (rev 129897)
@@ -306,6 +306,9 @@
# Needs rebaseline after bug 97217 is fixed
webkit.org/b/97325 css3/masking/clip-path-circle-relative-overflow.html [ ImageOnlyFailure Pass ]
+# Needs results
+webkit.org/b/97409 svg/custom/clip-mask-negative-scale.svg [ Missing Pass ]
+
# CSS image-set support not yet enabled (needs ENABLE_CSS_IMAGE_SET).
Bug(GTK) fast/css/image-set-parsing.html [ Skip ]
Bug(GTK) fast/css/image-set-parsing-invalid.html [ Skip ]
Modified: trunk/LayoutTests/platform/mac/TestExpectations (129896 => 129897)
--- trunk/LayoutTests/platform/mac/TestExpectations 2012-09-28 14:55:07 UTC (rev 129896)
+++ trunk/LayoutTests/platform/mac/TestExpectations 2012-09-28 15:24:41 UTC (rev 129897)
@@ -1305,6 +1305,9 @@
webkit.org/b/92464 [ Debug ] fast/events/tabindex-focus-blur-all.html [ Crash Pass ]
+# Needs results
+webkit.org/b/97409 svg/custom/clip-mask-negative-scale.svg [ Missing Pass ]
+
#Require rebaseline after https://bugs.webkit.org/show_bug.cgi?id=80394
webkit.org/b/80394 fast/block/float/024.html [ Failure ]
webkit.org/b/80394 fast/block/margin-collapse/empty-clear-blocks.html [ Failure ]
Modified: trunk/LayoutTests/platform/qt/TestExpectations (129896 => 129897)
--- trunk/LayoutTests/platform/qt/TestExpectations 2012-09-28 14:55:07 UTC (rev 129896)
+++ trunk/LayoutTests/platform/qt/TestExpectations 2012-09-28 15:24:41 UTC (rev 129897)
@@ -2907,6 +2907,9 @@
webkit.org/b/93247 [ Debug ] fast/lists/list-marker-remove-crash.html [ Crash ]
+# Needs results
+webkit.org/b/97409 svg/custom/clip-mask-negative-scale.svg [ Missing Pass ]
+
# This has always failed on Qt - exposed by bug 89826
webkit.org/b/94004 css2.1/20110323/c541-word-sp-000.htm [ ImageOnlyFailure ]
Added: trunk/LayoutTests/svg/custom/clip-mask-negative-scale.svg (0 => 129897)
--- trunk/LayoutTests/svg/custom/clip-mask-negative-scale.svg (rev 0)
+++ trunk/LayoutTests/svg/custom/clip-mask-negative-scale.svg 2012-09-28 15:24:41 UTC (rev 129897)
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Test for https://bugs.webkit.org/show_bug.cgi?id=97409 -->
+<svg width="800" height="600" viewBox="-200 -200 600 450" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <defs>
+ <clipPath id="clip">
+ <path d="M 10 10 h 90 v 90 h -90 z"/>
+ </clipPath>
+ <mask id="mask">
+ <rect x="10" y="10" width="90" height="90" fill="white"/>
+ </mask>
+ <!--
+ This is a 200x200 image, with a green 100x100 rect in the top-left corner and
+ a red 100x100 rect in the bottom-right corner, both with arrows pointing right & down.
+ The clip/mask above should isolate the green rect, and negative scaling should flip the arrows.
+ -->
+ <image id="img" x="10" y="10" width="200" height="200" xlink:href=""
+ iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A
+ /wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9wJFxAgAOBU/HEAAAAZdEVYdENv
+ bW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAACCklEQVR42u3cSw6DMAxAQbvi/ld2T1AEUiEf
+ z+xgg5TkKdmQjIoKpmE65vIxBCAQEAgIBAQCAgGBgEBAICAQQCAgEBAICAQEAgIBgbwmTSACEQkC
+ EQkzOrZZrBnhd27mDyReXKg54Js4Yi1HHAhEHAhEHAgEBAICAYGAQACBgEBAICAQEAgIBAQCAgGB
+ AAIBgYBAQCAgEBAICAQEAhv7z82KefLsah7a7yB18z20O2KVOBDItUjEgUAcqxAICAQQCAgEBAIC
+ AYGAQEAgIBAQCCAQEAgIBAQCAgGBgEBAICAQEAggEBAICAQEAgIBgYBAQCAgEEAgIBAQCAgEBAIC
+ AYGAQEAgIBBAICAQEAgIBAQCAgGBgECgi6OijMJMMo2BHQQEAgIBgYBAAIGAQEAgIBAQCAgEBAIC
+ AYEAAgGBgEAYLQUCvSIRCCI5cZhOi/Wp75ZAWEENiHGXq0AcsVg2SIEgDoEgDoGAQEAgIBBAICAQ
+ EAgIBAQCAgGBgEBAICAQQCAgEBAICAQEAgIBgYBAoAs3K24oT57L8NhBuqub7xFI+0jEIRB+RCEO
+ geBYJRAQCAgEBAICAYGAQACBgEBAICAQEAgIBAQCAgGBAAIBgYBAQCAgEBAICAQEAgIBgQACAYGA
+ QEAgIBAQCAgEBAICAYEAAgGBgEBAICAQEAgIBAQCAgEEAgIBgcCDvlPeI47W7oF7AAAAAElFTkSu
+ QmCC
+ "/>
+ </defs>
+
+ <g transform="matrix(1 0 0 1 -100 -100)" mask="url(#mask)">
+ <use xlink:href=""
+ </g>
+ <g transform="matrix(-1 0 0 -1 -100 -100)" mask="url(#mask)">
+ <use xlink:href=""
+ </g>
+ <g transform="matrix(-1 0 0 1 -100 -100)" mask="url(#mask)">
+ <use xlink:href=""
+ </g>
+ <g transform="matrix(1 0 0 -1 -100 -100)" mask="url(#mask)">
+ <use xlink:href=""
+ </g>
+
+ <g transform="translate(300, 0)">
+ <g transform="matrix(1 0 0 1 -100 -100)" clip-path="url(#clip)">
+ <use xlink:href=""
+ </g>
+ <g transform="matrix(-1 0 0 -1 -100 -100)" clip-path="url(#clip)">
+ <use xlink:href=""
+ </g>
+ <g transform="matrix(-1 0 0 1 -100 -100)" clip-path="url(#clip)">
+ <use xlink:href=""
+ </g>
+ <g transform="matrix(1 0 0 -1 -100 -100)" clip-path="url(#clip)">
+ <use xlink:href=""
+ </g>
+ </g>
+
+ <text x="-200" y="100" font-size="10px">
+ This test passes when it displays two four-square groups, all green and with arrows pointing away from the group center.
+ </text>
+</svg>
Modified: trunk/Source/WebCore/ChangeLog (129896 => 129897)
--- trunk/Source/WebCore/ChangeLog 2012-09-28 14:55:07 UTC (rev 129896)
+++ trunk/Source/WebCore/ChangeLog 2012-09-28 15:24:41 UTC (rev 129897)
@@ -1,3 +1,22 @@
+2012-09-28 Florin Malita <[email protected]>
+
+ [Chromium] Incorrect resampling of clipped/masked images.
+ https://bugs.webkit.org/show_bug.cgi?id=97409
+
+ Reviewed by Stephen White.
+
+ Currently, high-quality resampling is used for translate/scale-only transforms, but when
+ the scale is negative the resampling subset ends up positioned incorrectly.
+ ImageSkia.cpp:drawResampledBitmap needs to account for negative scaling factors, and apply
+ only absolute values when calculating the resampling subregion in bitmap coordinates.
+
+ Thanks [email protected] for isolating the regression.
+
+ Test: svg/custom/clip-mask-negative-scale.svg
+
+ * platform/graphics/skia/ImageSkia.cpp:
+ (WebCore::drawResampledBitmap):
+
2012-09-28 Sheriff Bot <[email protected]>
Unreviewed, rolling out r129882.
Modified: trunk/Source/WebCore/platform/graphics/skia/ImageSkia.cpp (129896 => 129897)
--- trunk/Source/WebCore/platform/graphics/skia/ImageSkia.cpp 2012-09-28 14:55:07 UTC (rev 129896)
+++ trunk/Source/WebCore/platform/graphics/skia/ImageSkia.cpp 2012-09-28 15:24:41 UTC (rev 129897)
@@ -196,13 +196,17 @@
if (!destRectVisibleSubset.intersect(destRect))
return; // Nothing visible in destRect.
- // Compute the transformed (screen space) portion of the visible portion for
- // use below.
- SkRect destRectVisibleSubsetTransformed;
- canvas.getTotalMatrix().mapRect(&destRectVisibleSubsetTransformed, destRectVisibleSubset);
- SkRect destBitmapSubsetTransformed = destRectVisibleSubsetTransformed;
- destBitmapSubsetTransformed.offset(-destRectTransformed.fLeft,
- -destRectTransformed.fTop);
+ // Compute the image-relative (bitmap space) subset.
+ SkRect destBitmapSubset = destRectVisibleSubset;
+ destBitmapSubset.offset(-destRect.x(), -destRect.y());
+
+ // Scale the subset to the requested size. The canvas scale can be negative,
+ // but the resampling code is only interested in positive scaling in its normal space.
+ SkMatrix subsetTransform;
+ subsetTransform.setScale(SkScalarAbs(canvas.getTotalMatrix().getScaleX()),
+ SkScalarAbs(canvas.getTotalMatrix().getScaleY()));
+ SkRect destBitmapSubsetTransformed;
+ subsetTransform.mapRect(&destBitmapSubsetTransformed, destBitmapSubset);
SkIRect destBitmapSubsetTransformedRounded;
destBitmapSubsetTransformed.round(&destBitmapSubsetTransformedRounded);