From 3caba33952096386d8f51ba3aab5af320b2ba1a6 Mon Sep 17 00:00:00 2001 From: "timothy_horton@apple.com" Date: Tue, 27 Sep 2011 21:06:17 +0000 Subject: [PATCH] REGRESSION(65665): Pattern size being clamped to SVG size can prevent transformed elements from being fully covered by userSpaceOnUse patterns https://bugs.webkit.org/show_bug.cgi?id=67700 Reviewed by Darin Adler. Clamp all resources to the same size, 4096x4096 (arbitrarily chosen), instead of to the size of the element. This fixes the case where a transformed element displays part of a resource outside of the size of the element. When drawing an oversized pattern into its tile image, scale the content down to fit. When drawing the tile image to the screen, scale it back up to fit the expected area. This will cause pixelation when patterns are over the 4k limit. Tests: svg/custom/transformed-pattern-clamp-svg-root.svg, svg/custom/oversized-pattern-scale.svg * rendering/svg/RenderSVGResourceClipper.cpp: (WebCore::RenderSVGResourceClipper::applyClippingToContext): * rendering/svg/RenderSVGResourceGradient.cpp: (WebCore::createMaskAndSwapContextForTextGradient): (WebCore::clipToTextMask): * rendering/svg/RenderSVGResourceMasker.cpp: (WebCore::RenderSVGResourceMasker::applyResource): * rendering/svg/RenderSVGResourcePattern.cpp: (WebCore::RenderSVGResourcePattern::applyResource): (WebCore::RenderSVGResourcePattern::createTileImage): * rendering/svg/RenderSVGResourcePattern.h: * rendering/svg/SVGImageBufferTools.cpp: (WebCore::SVGImageBufferTools::clampedAbsoluteTargetRect): * rendering/svg/SVGImageBufferTools.h: pattern-excessive-malloc is so excessive that it runs into the floating point precision barrier when determining the scale to draw the pattern at; drop the size two orders of magnitude, which is still very excessive but easier to draw with. Add a test (transformed-pattern-clamp-svg-root.svg) that ensures that patterns on transformed elements are displayed correctly, instead of being clamped to the size of the element. Add a test (oversized-pattern-scale.svg) that ensures that oversized patterns are correctly drawn into the pattern tile scaled down and then are scaled back up when drawn to the screen. * platform/mac/svg/custom/js-late-gradient-and-object-creation-expected.png: * platform/mac/svg/custom/pattern-excessive-malloc-expected.txt: * platform/qt/svg/custom/pattern-excessive-malloc-expected.txt: * svg/custom/pattern-excessive-malloc-expected.txt: * svg/custom/pattern-excessive-malloc.svg: * svg/custom/oversized-pattern-scale-expected.png: Added. * svg/custom/oversized-pattern-scale-expected.txt: Added. * svg/custom/oversized-pattern-scale.svg: Added. * svg/custom/transformed-pattern-clamp-svg-root.svg: Added. * svg/custom/transformed-pattern-clamp-svg-root-expected.png: Added. * svg/custom/transformed-pattern-clamp-svg-root-expected.txt: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96155 268f45cc-cd09-0410-ab3c-d52691b4dbfc --- LayoutTests/ChangeLog | 30 +++++++++++++++++++ ...-late-gradient-and-object-creation-expected.png | Bin 104325 -> 105592 bytes .../custom/pattern-excessive-malloc-expected.txt | 2 +- .../custom/pattern-excessive-malloc-expected.txt | 2 +- .../custom/oversized-pattern-scale-expected.png | Bin 0 -> 10827 bytes .../custom/oversized-pattern-scale-expected.txt | 8 +++++ LayoutTests/svg/custom/oversized-pattern-scale.svg | 11 +++++++ .../custom/pattern-excessive-malloc-expected.txt | 4 +-- .../svg/custom/pattern-excessive-malloc.svg | 4 +-- ...transformed-pattern-clamp-svg-root-expected.png | Bin 0 -> 25170 bytes ...transformed-pattern-clamp-svg-root-expected.txt | 11 +++++++ .../custom/transformed-pattern-clamp-svg-root.svg | 13 ++++++++ Source/WebCore/ChangeLog | 33 +++++++++++++++++++++ .../rendering/svg/RenderSVGResourceClipper.cpp | 2 +- .../rendering/svg/RenderSVGResourceGradient.cpp | 4 +-- .../rendering/svg/RenderSVGResourceMasker.cpp | 2 +- .../rendering/svg/RenderSVGResourcePattern.cpp | 27 ++++++----------- .../rendering/svg/RenderSVGResourcePattern.h | 5 ++-- .../WebCore/rendering/svg/SVGImageBufferTools.cpp | 15 ++++++---- Source/WebCore/rendering/svg/SVGImageBufferTools.h | 2 +- 20 files changed, 139 insertions(+), 36 deletions(-) create mode 100644 LayoutTests/svg/custom/oversized-pattern-scale-expected.png create mode 100644 LayoutTests/svg/custom/oversized-pattern-scale-expected.txt create mode 100644 LayoutTests/svg/custom/oversized-pattern-scale.svg create mode 100644 LayoutTests/svg/custom/transformed-pattern-clamp-svg-root-expected.png create mode 100644 LayoutTests/svg/custom/transformed-pattern-clamp-svg-root-expected.txt create mode 100644 LayoutTests/svg/custom/transformed-pattern-clamp-svg-root.svg diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog index 103e4e5..bb76f23 100644 --- a/LayoutTests/ChangeLog +++ b/LayoutTests/ChangeLog @@ -1,3 +1,33 @@ +2011-09-27 Tim Horton + + REGRESSION(65665): Pattern size being clamped to SVG size can prevent transformed elements from being fully covered by userSpaceOnUse patterns + https://bugs.webkit.org/show_bug.cgi?id=67700 + + + Reviewed by Darin Adler. + + pattern-excessive-malloc is so excessive that it runs into the floating point precision barrier + when determining the scale to draw the pattern at; drop the size two orders of magnitude, which is + still very excessive but easier to draw with. + + Add a test (transformed-pattern-clamp-svg-root.svg) that ensures that patterns on transformed + elements are displayed correctly, instead of being clamped to the size of the element. + + Add a test (oversized-pattern-scale.svg) that ensures that oversized patterns are correctly drawn + into the pattern tile scaled down and then are scaled back up when drawn to the screen. + + * platform/mac/svg/custom/js-late-gradient-and-object-creation-expected.png: + * platform/mac/svg/custom/pattern-excessive-malloc-expected.txt: + * platform/qt/svg/custom/pattern-excessive-malloc-expected.txt: + * svg/custom/pattern-excessive-malloc-expected.txt: + * svg/custom/pattern-excessive-malloc.svg: + * svg/custom/oversized-pattern-scale-expected.png: Added. + * svg/custom/oversized-pattern-scale-expected.txt: Added. + * svg/custom/oversized-pattern-scale.svg: Added. + * svg/custom/transformed-pattern-clamp-svg-root.svg: Added. + * svg/custom/transformed-pattern-clamp-svg-root-expected.png: Added. + * svg/custom/transformed-pattern-clamp-svg-root-expected.txt: Added. + 2011-09-27 Dan Bernstein Assertion failure in RenderLayer::paintPaginatedChildLayer() diff --git a/LayoutTests/platform/mac/svg/custom/js-late-gradient-and-object-creation-expected.png b/LayoutTests/platform/mac/svg/custom/js-late-gradient-and-object-creation-expected.png index fc40c6aa0ae1a81cf15d5d2338fe6eccd4986fbf..513e28df91925aea32010089ad590e9d8c6c9bd4 100644 GIT binary patch literal 105592 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

wo^rEm8=cX1S6 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%0A%FWBLWA`ay~;h5Sa3AAL`92(6YLs^hiN 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%0Al?qQT`O5#8{>c0^3*(iGC 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 KLZ#f-fd2*40A!y4 diff --git a/LayoutTests/platform/mac/svg/custom/pattern-excessive-malloc-expected.txt b/LayoutTests/platform/mac/svg/custom/pattern-excessive-malloc-expected.txt index c12ad73..91692be 100644 --- a/LayoutTests/platform/mac/svg/custom/pattern-excessive-malloc-expected.txt +++ b/LayoutTests/platform/mac/svg/custom/pattern-excessive-malloc-expected.txt @@ -4,5 +4,5 @@ layer at (0,0) size 800x600 RenderSVGRoot {svg} at (10,300) size 100x100 RenderSVGHiddenContainer {defs} at (0,0) size 0x0 RenderSVGResourcePattern {pattern} [id="pattern"] [patternUnits=userSpaceOnUse] [patternContentUnits=userSpaceOnUse] - RenderSVGPath {rect} at (0,0) size 800x600 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=99999997952.00] [height=99999997952.00] + RenderSVGPath {rect} at (0,0) size 800x600 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=1000000000.00] [height=1000000000.00] RenderSVGPath {rect} at (10,300) size 100x100 [fill={[type=PATTERN] [id="pattern"]}] [x=10.00] [y=300.00] [width=100.00] [height=100.00] diff --git a/LayoutTests/platform/qt/svg/custom/pattern-excessive-malloc-expected.txt b/LayoutTests/platform/qt/svg/custom/pattern-excessive-malloc-expected.txt index c12ad73..91692be 100644 --- a/LayoutTests/platform/qt/svg/custom/pattern-excessive-malloc-expected.txt +++ b/LayoutTests/platform/qt/svg/custom/pattern-excessive-malloc-expected.txt @@ -4,5 +4,5 @@ layer at (0,0) size 800x600 RenderSVGRoot {svg} at (10,300) size 100x100 RenderSVGHiddenContainer {defs} at (0,0) size 0x0 RenderSVGResourcePattern {pattern} [id="pattern"] [patternUnits=userSpaceOnUse] [patternContentUnits=userSpaceOnUse] - RenderSVGPath {rect} at (0,0) size 800x600 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=99999997952.00] [height=99999997952.00] + RenderSVGPath {rect} at (0,0) size 800x600 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=1000000000.00] [height=1000000000.00] RenderSVGPath {rect} at (10,300) size 100x100 [fill={[type=PATTERN] [id="pattern"]}] [x=10.00] [y=300.00] [width=100.00] [height=100.00] diff --git a/LayoutTests/svg/custom/oversized-pattern-scale-expected.png b/LayoutTests/svg/custom/oversized-pattern-scale-expected.png new file mode 100644 index 0000000000000000000000000000000000000000..d49a9e919e64a530e8ced66384dbbff93cd21468 GIT binary patch literal 10827 zcmeI2`9G9f9LFESwT?tGDKS}FN0S+aFj>mJL_#&TQ7OyF5MeBBmQ*C%v6g#Ni3Z(h zFkD4-MX#Dr$ui9#jj@w)neMb${)Kz*`RO^&_xqglI?wlYp6};I zV=%fHj1E>u53A#gCJ@?koMi>0DEpb3I#`;TA{|Zz9rg3~g`jYu^Uggd84mLN_rAGQ zX0rYgL;bjK5dliaM@8MBt0GbM3w1Q;CJ{9 zX;p7~;z%wU+t6YY;#wpkp>k|jkWU=*Qi@u}Q4AJGk!TQWG|{)N!tKiP>z$B(+Zrd& z*3!I_hDzRDY`$N+k6>O7pB_~SIXmt_y`4UoT{5sTC4i!6_bMu>TSYILc&Q(1`_tHC zP3@klT%xNks}M^zX;Ckg)vO&DCi!J?eJPo4o8&Z<)N8z*OLhGH`lW;uDg6xYq(d4t zA5(|XahqUq9j=RT(2Y~m)_W&uwH=+Q*Th&@qoPgiF*tthm#I@peGzG+oCnG&ZIg%6 z^j$hT*)6x!9zQwlXe?}D5`S5Vu(3DQ1nx!gd2)BgMnO^4>bKW^BE%5qO6Mv_4>Uqkh$|wU-r6y zVkvP)eo|kV1>W~B`*_EWP~HBkPMLF|QZIL;4{LaLCOINqeNzxmC?;xcmdODud|M9SP zhge?qizCe0N8%-@Q)-tR5L4z+8%F6mbR&<-paid?PCA3YDMY(-su`)Yn`LLxuXJin z8(zM5nz`&@yoRl*>h4+38mW-uM~S9ylTHiGU!)0 zJ`-+v-{KvLYH)=s{LrcWNWY&)h~C6z;^4aZ#~jqo1EP4v`d1++M1f8yTY?&e-^y9t zsj@q-GB(wq)2GBRz>Ah_5^FBJ+AKjM-iR-){hBTJVfJi7!fgwEjTDCh?@z52R6EbB%7xl_ zd|es49jxtePK&X!i1XzbNo8MiImZtPk*gfc)^C%D-m?kRO3QET}2aPoR%LAAvpseFXZr zu*U*?0Qdm#!NQMhzz2X203QH80DJ)W;D;&#J_3C7ALgU=S89eKNVMqNSpZN=0ktGh zO9QpEpGS25{d*x71Oo9cYs0d7a>lmp-CbQJnYO(}S_^wVB(6ZtmCNPbr*8H)Sil~b zNCt|!_G$2-D4D#hziM1tKRTOMSEmvf7^bbkRt)H2logG8DGBWK(&V@!t&-2H4yolE`@sB5{=8deAA#Cg>?= z&$8Ku!C0C*jtZ4`Wk%{Qp*2i|jG~^2jQpEdVR&sZV1mY1Bz4?){hXMght;w{TwpQK ZRM|nXxXI_o1gAqGOLIH3QWMYke*hL2pQ``> literal 0 HcmV?d00001 diff --git a/LayoutTests/svg/custom/oversized-pattern-scale-expected.txt b/LayoutTests/svg/custom/oversized-pattern-scale-expected.txt new file mode 100644 index 0000000..7e77d3f --- /dev/null +++ b/LayoutTests/svg/custom/oversized-pattern-scale-expected.txt @@ -0,0 +1,8 @@ +layer at (0,0) size 8192x585 + RenderView at (0,0) size 800x585 +layer at (0,0) size 8192x585 + RenderSVGRoot {svg} at (0,0) size 8192x100 + RenderSVGHiddenContainer {defs} at (0,0) size 0x0 + RenderSVGResourcePattern {pattern} [id="pattern"] [patternUnits=userSpaceOnUse] [patternContentUnits=userSpaceOnUse] + RenderSVGPath {rect} at (0,0) size 4096x585 [fill={[type=SOLID] [color=#000000]}] [x=0.00] [y=0.00] [width=4096.00] [height=8192.00] + RenderSVGPath {rect} at (0,0) size 8192x100 [fill={[type=PATTERN] [id="pattern"]}] [x=0.00] [y=0.00] [width=8192.00] [height=100.00] diff --git a/LayoutTests/svg/custom/oversized-pattern-scale.svg b/LayoutTests/svg/custom/oversized-pattern-scale.svg new file mode 100644 index 0000000..73d0a8b --- /dev/null +++ b/LayoutTests/svg/custom/oversized-pattern-scale.svg @@ -0,0 +1,11 @@ + + +The black square should be 4096 pixels wide. + + + + + + + + diff --git a/LayoutTests/svg/custom/pattern-excessive-malloc-expected.txt b/LayoutTests/svg/custom/pattern-excessive-malloc-expected.txt index 34d3609..91692be 100644 --- a/LayoutTests/svg/custom/pattern-excessive-malloc-expected.txt +++ b/LayoutTests/svg/custom/pattern-excessive-malloc-expected.txt @@ -4,5 +4,5 @@ layer at (0,0) size 800x600 RenderSVGRoot {svg} at (10,300) size 100x100 RenderSVGHiddenContainer {defs} at (0,0) size 0x0 RenderSVGResourcePattern {pattern} [id="pattern"] [patternUnits=userSpaceOnUse] [patternContentUnits=userSpaceOnUse] - RenderSVGPath {rect} at (0,0) size 800x600 [fill={[type=SOLID] [color=#FF0000]}] [data="M0.00,0.00 L99999997952.00,0.00 L99999997952.00,99999997952.00 L0.00,99999997952.00 Z"] - RenderSVGPath {rect} at (10,300) size 100x100 [fill={[type=PATTERN] [id="pattern"]}] [data="M10.00,300.00 L110.00,300.00 L110.00,400.00 L10.00,400.00 Z"] + RenderSVGPath {rect} at (0,0) size 800x600 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=1000000000.00] [height=1000000000.00] + RenderSVGPath {rect} at (10,300) size 100x100 [fill={[type=PATTERN] [id="pattern"]}] [x=10.00] [y=300.00] [width=100.00] [height=100.00] diff --git a/LayoutTests/svg/custom/pattern-excessive-malloc.svg b/LayoutTests/svg/custom/pattern-excessive-malloc.svg index fac173a..eeeaa7b 100644 --- a/LayoutTests/svg/custom/pattern-excessive-malloc.svg +++ b/LayoutTests/svg/custom/pattern-excessive-malloc.svg @@ -1,8 +1,8 @@ - - + + diff --git a/LayoutTests/svg/custom/transformed-pattern-clamp-svg-root-expected.png b/LayoutTests/svg/custom/transformed-pattern-clamp-svg-root-expected.png new file mode 100644 index 0000000000000000000000000000000000000000..753677c2daf39b292f8737ece000d6e6dcb68a33 GIT binary patch literal 25170 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

kND1-Gx3 zgLOZy*$`14a7d8}f_8nyJy2o;t{gg&UBSFS!o!(cD<~`PaP3{Cmg|#U?W?`3RB4pu zAW~O*nE?lq1;8TOeuii(rUw$pA<*1?DsDzCIv@2RD)G-ruX6-c&M3pG>5#1eH_E8b zaA(=6<#_{K=s|5HM&m)D6z~U(r5SNa>m0O0JDD;rvRySmCR0=8Rww0E&Bq~c?8Y8c zxeP^_O6Y#U-0QJJV59k6*N?fV#a6-hauJA%aD~}8-4=ZQNKm~RD9*#{faK9A8UuT` zn>C1BS6CAGAeYFt>HGLLOtyWko6WhrXVs3^RCoTd*_I1}I@m~E{O0yi(EA)wpfq>2 zAD@y*mF$&CIzvc#*><5+g+^$9%@5DJNLPcg>9bkpgN?#6V1a^YS`s>1D?Sn}7n@nb zMm(6I>i>-`z(^dEJmX0=%#?)C@KPZ2aeTC-R`7t+kmhI;6>+GLLklE zuRhtgOu;?qUzap(5QBNYXg(I{0UK;4#HP)`>b%Dw*k3PYChk~6m9$=X{ zaK^kk{`qcDd162ks2CwD96rQ0<3)P7V*rDdDER=yPPj;(#Swi`QROBp{`I*^DqSD| zQXT2z&X6N-DG0fL7iWw27|A>$aKys+JU%DP)!_#^`A0#FenJ05l84%>=o$uesF#PT5F zv|feTI&b9(@F_7^VhRZ7pw~Q~WIZ=4Xl&%LR;d&03M3Dk_j})ca0HhT)Ew$0M z*?8!as3uO2anwxYN1@a!?-XkR4%8zAzgtfKe_~12%p1EuxIh=Da{srH^g;Ft);O3z z7-#_`+>ik)`l1zJs2ot_oQR9#g7*f{auP4-m5oYVrM(IBwoHK>1|E;zCt zpwI3}mdKNqvmMzpO8=Kgf}FIbxZ?FNZ~&Z4j*05nGBPDGzS_EJc1D7 z4>OaP{egxiCyoZ8wq_1+t$cV2Z1~5|$f0BVZ<_zc8kaN9CkGBqEIBrh+ZG=F+`Ha+ zY0>$GyPRWhAhTv%yzLv=Q1!-V6$BhQ`_0RDzx|K1_ke$xfV^Pkj)~*pMb9#B;Lxt- zm%jS=o^!4QTvi~s0OPIdz0bsMaOnL<^KSh6v9pGQsnpfr0?0Ap&V9RP#~0u#qdq_B zj9|XC=2!u^fWX>nrxNti0fK zFR1SeK=49Hc_E~{(3@V!axc`&7b5QqE&PQ-@WL{9VHv!z4F3OG26lAHYajpEV4Zda S|C5M$dv=9>TD$X$Z~qtRLQ>8E literal 0 HcmV?d00001 diff --git a/LayoutTests/svg/custom/transformed-pattern-clamp-svg-root-expected.txt b/LayoutTests/svg/custom/transformed-pattern-clamp-svg-root-expected.txt new file mode 100644 index 0000000..3c9103f --- /dev/null +++ b/LayoutTests/svg/custom/transformed-pattern-clamp-svg-root-expected.txt @@ -0,0 +1,11 @@ +layer at (0,0) size 800x600 + RenderView at (0,0) size 800x600 +layer at (0,0) size 200x200 + RenderSVGRoot {svg} at (0,0) size 200x200 + RenderSVGHiddenContainer {defs} at (0,0) size 0x0 + RenderSVGResourceLinearGradient {linearGradient} [id="gradient"] [gradientUnits=objectBoundingBox] [start=(0,0)] [end=(0,1)] + RenderSVGGradientStop {stop} [offset=0.00] [color=#FFFFFF] + RenderSVGGradientStop {stop} [offset=1.00] [color=#000000] + RenderSVGResourcePattern {pattern} [id="shot"] [patternUnits=userSpaceOnUse] [patternContentUnits=userSpaceOnUse] + RenderSVGPath {rect} at (0,0) size 200x200 [fill={[type=LINEAR-GRADIENT] [id="gradient"]}] [x=0.00] [y=0.00] [width=400.00] [height=400.00] + RenderSVGPath {rect} at (0,0) size 200x200 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,-100.00)}] [fill={[type=PATTERN] [id="shot"]}] [x=0.00] [y=100.00] [width=200.00] [height=200.00] diff --git a/LayoutTests/svg/custom/transformed-pattern-clamp-svg-root.svg b/LayoutTests/svg/custom/transformed-pattern-clamp-svg-root.svg new file mode 100644 index 0000000..314d266 --- /dev/null +++ b/LayoutTests/svg/custom/transformed-pattern-clamp-svg-root.svg @@ -0,0 +1,13 @@ + +The rectangle should be filled with a single smooth gradient. + + + + + + + + + + + diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog index a259556..0a6aaad 100644 --- a/Source/WebCore/ChangeLog +++ b/Source/WebCore/ChangeLog @@ -1,3 +1,36 @@ +2011-09-27 Tim Horton + + REGRESSION(65665): Pattern size being clamped to SVG size can prevent transformed elements from being fully covered by userSpaceOnUse patterns + https://bugs.webkit.org/show_bug.cgi?id=67700 + + + Reviewed by Darin Adler. + + Clamp all resources to the same size, 4096x4096 (arbitrarily chosen), instead of to the size + of the element. This fixes the case where a transformed element displays part of a resource + outside of the size of the element. + + When drawing an oversized pattern into its tile image, scale the content down to fit. When drawing + the tile image to the screen, scale it back up to fit the expected area. This will cause pixelation + when patterns are over the 4k limit. + + Tests: svg/custom/transformed-pattern-clamp-svg-root.svg, svg/custom/oversized-pattern-scale.svg + + * rendering/svg/RenderSVGResourceClipper.cpp: + (WebCore::RenderSVGResourceClipper::applyClippingToContext): + * rendering/svg/RenderSVGResourceGradient.cpp: + (WebCore::createMaskAndSwapContextForTextGradient): + (WebCore::clipToTextMask): + * rendering/svg/RenderSVGResourceMasker.cpp: + (WebCore::RenderSVGResourceMasker::applyResource): + * rendering/svg/RenderSVGResourcePattern.cpp: + (WebCore::RenderSVGResourcePattern::applyResource): + (WebCore::RenderSVGResourcePattern::createTileImage): + * rendering/svg/RenderSVGResourcePattern.h: + * rendering/svg/SVGImageBufferTools.cpp: + (WebCore::SVGImageBufferTools::clampedAbsoluteTargetRect): + * rendering/svg/SVGImageBufferTools.h: + 2011-09-27 Dan Bernstein Assertion failure in RenderLayer::paintPaginatedChildLayer() diff --git a/Source/WebCore/rendering/svg/RenderSVGResourceClipper.cpp b/Source/WebCore/rendering/svg/RenderSVGResourceClipper.cpp index 238c096..22b41fa 100644 --- a/Source/WebCore/rendering/svg/RenderSVGResourceClipper.cpp +++ b/Source/WebCore/rendering/svg/RenderSVGResourceClipper.cpp @@ -173,7 +173,7 @@ bool RenderSVGResourceClipper::applyClippingToContext(RenderObject* object, cons SVGImageBufferTools::calculateTransformationToOutermostSVGCoordinateSystem(object, absoluteTransform); FloatRect absoluteTargetRect = absoluteTransform.mapRect(repaintRect); - FloatRect clampedAbsoluteTargetRect = SVGImageBufferTools::clampedAbsoluteTargetRectForRenderer(object, absoluteTargetRect); + FloatRect clampedAbsoluteTargetRect = SVGImageBufferTools::clampedAbsoluteTargetRect(absoluteTargetRect); if (shouldCreateClipData && !clampedAbsoluteTargetRect.isEmpty()) { if (!SVGImageBufferTools::createImageBuffer(absoluteTargetRect, clampedAbsoluteTargetRect, clipperData->clipMaskImage, ColorSpaceDeviceRGB)) diff --git a/Source/WebCore/rendering/svg/RenderSVGResourceGradient.cpp b/Source/WebCore/rendering/svg/RenderSVGResourceGradient.cpp index 1aab935..5e31b76 100644 --- a/Source/WebCore/rendering/svg/RenderSVGResourceGradient.cpp +++ b/Source/WebCore/rendering/svg/RenderSVGResourceGradient.cpp @@ -86,7 +86,7 @@ static inline bool createMaskAndSwapContextForTextGradient(GraphicsContext*& con SVGImageBufferTools::calculateTransformationToOutermostSVGCoordinateSystem(textRootBlock, absoluteTransform); FloatRect absoluteTargetRect = absoluteTransform.mapRect(textRootBlock->repaintRectInLocalCoordinates()); - FloatRect clampedAbsoluteTargetRect = SVGImageBufferTools::clampedAbsoluteTargetRectForRenderer(textRootBlock, absoluteTargetRect); + FloatRect clampedAbsoluteTargetRect = SVGImageBufferTools::clampedAbsoluteTargetRect(absoluteTargetRect); if (clampedAbsoluteTargetRect.isEmpty()) return false; @@ -123,7 +123,7 @@ static inline AffineTransform clipToTextMask(GraphicsContext* context, SVGImageBufferTools::calculateTransformationToOutermostSVGCoordinateSystem(textRootBlock, absoluteTransform); FloatRect absoluteTargetRect = absoluteTransform.mapRect(targetRect); - FloatRect clampedAbsoluteTargetRect = SVGImageBufferTools::clampedAbsoluteTargetRectForRenderer(textRootBlock, absoluteTargetRect); + FloatRect clampedAbsoluteTargetRect = SVGImageBufferTools::clampedAbsoluteTargetRect(absoluteTargetRect); SVGImageBufferTools::clipToImageBuffer(context, absoluteTransform, clampedAbsoluteTargetRect, imageBuffer); diff --git a/Source/WebCore/rendering/svg/RenderSVGResourceMasker.cpp b/Source/WebCore/rendering/svg/RenderSVGResourceMasker.cpp index 4a2803c..b110168 100644 --- a/Source/WebCore/rendering/svg/RenderSVGResourceMasker.cpp +++ b/Source/WebCore/rendering/svg/RenderSVGResourceMasker.cpp @@ -99,7 +99,7 @@ bool RenderSVGResourceMasker::applyResource(RenderObject* object, RenderStyle*, SVGImageBufferTools::calculateTransformationToOutermostSVGCoordinateSystem(object, absoluteTransform); FloatRect absoluteTargetRect = absoluteTransform.mapRect(object->repaintRectInLocalCoordinates()); - FloatRect clampedAbsoluteTargetRect = SVGImageBufferTools::clampedAbsoluteTargetRectForRenderer(object, absoluteTargetRect); + FloatRect clampedAbsoluteTargetRect = SVGImageBufferTools::clampedAbsoluteTargetRect(absoluteTargetRect); if (!maskerData->maskImage && !clampedAbsoluteTargetRect.isEmpty()) { SVGMaskElement* maskElement = static_cast(node()); diff --git a/Source/WebCore/rendering/svg/RenderSVGResourcePattern.cpp b/Source/WebCore/rendering/svg/RenderSVGResourcePattern.cpp index b082481..2f7ff52 100644 --- a/Source/WebCore/rendering/svg/RenderSVGResourcePattern.cpp +++ b/Source/WebCore/rendering/svg/RenderSVGResourcePattern.cpp @@ -120,9 +120,10 @@ bool RenderSVGResourcePattern::applyResource(RenderObject* object, RenderStyle* // Ignore 2D rotation, as it doesn't affect the size of the tile. SVGImageBufferTools::clear2DRotation(absoluteTransformIgnoringRotation); FloatRect absoluteTileBoundaries = absoluteTransformIgnoringRotation.mapRect(tileBoundaries); + FloatRect clampedAbsoluteTileBoundaries; // Build tile image. - OwnPtr tileImage = createTileImage(object, m_attributes, tileBoundaries, absoluteTileBoundaries, tileImageTransform); + OwnPtr tileImage = createTileImage(m_attributes, tileBoundaries, absoluteTileBoundaries, tileImageTransform, clampedAbsoluteTileBoundaries); if (!tileImage) return false; @@ -137,7 +138,7 @@ bool RenderSVGResourcePattern::applyResource(RenderObject* object, RenderStyle* // Compute pattern space transformation. patternData->transform.translate(tileBoundaries.x(), tileBoundaries.y()); - patternData->transform.scale(tileBoundaries.width() / absoluteTileBoundaries.width(), tileBoundaries.height() / absoluteTileBoundaries.height()); + patternData->transform.scale(tileBoundaries.width() / clampedAbsoluteTileBoundaries.width(), tileBoundaries.height() / clampedAbsoluteTileBoundaries.height()); AffineTransform patternTransform = m_attributes.patternTransform(); if (!patternTransform.isIdentity()) @@ -241,23 +242,13 @@ bool RenderSVGResourcePattern::buildTileImageTransform(RenderObject* renderer, return true; } -PassOwnPtr RenderSVGResourcePattern::createTileImage(RenderObject* object, - const PatternAttributes& attributes, +PassOwnPtr RenderSVGResourcePattern::createTileImage(const PatternAttributes& attributes, const FloatRect& tileBoundaries, const FloatRect& absoluteTileBoundaries, - const AffineTransform& tileImageTransform) const + const AffineTransform& tileImageTransform, + FloatRect& clampedAbsoluteTileBoundaries) const { - ASSERT(object); - - // Clamp tile image size against SVG viewport size, as last resort, to avoid allocating huge image buffers. - FloatRect contentBoxRect = SVGRenderSupport::findTreeRootObject(object)->contentBoxRect(); - - FloatRect clampedAbsoluteTileBoundaries = absoluteTileBoundaries; - if (clampedAbsoluteTileBoundaries.width() > contentBoxRect.width()) - clampedAbsoluteTileBoundaries.setWidth(contentBoxRect.width()); - - if (clampedAbsoluteTileBoundaries.height() > contentBoxRect.height()) - clampedAbsoluteTileBoundaries.setHeight(contentBoxRect.height()); + clampedAbsoluteTileBoundaries = SVGImageBufferTools::clampedAbsoluteTargetRect(absoluteTileBoundaries); OwnPtr tileImage; @@ -268,8 +259,8 @@ PassOwnPtr RenderSVGResourcePattern::createTileImage(RenderObject* ASSERT(tileImageContext); // The image buffer represents the final rendered size, so the content has to be scaled (to avoid pixelation). - tileImageContext->scale(FloatSize(absoluteTileBoundaries.width() / tileBoundaries.width(), - absoluteTileBoundaries.height() / tileBoundaries.height())); + tileImageContext->scale(FloatSize(clampedAbsoluteTileBoundaries.width() / tileBoundaries.width(), + clampedAbsoluteTileBoundaries.height() / tileBoundaries.height())); // Apply tile image transformations. if (!tileImageTransform.isIdentity()) diff --git a/Source/WebCore/rendering/svg/RenderSVGResourcePattern.h b/Source/WebCore/rendering/svg/RenderSVGResourcePattern.h index a697c71..9e86486 100644 --- a/Source/WebCore/rendering/svg/RenderSVGResourcePattern.h +++ b/Source/WebCore/rendering/svg/RenderSVGResourcePattern.h @@ -61,8 +61,9 @@ public: private: bool buildTileImageTransform(RenderObject*, const PatternAttributes&, const SVGPatternElement*, FloatRect& patternBoundaries, AffineTransform& tileImageTransform) const; - PassOwnPtr createTileImage(RenderObject*, const PatternAttributes&, const FloatRect& tileBoundaries, - const FloatRect& absoluteTileBoundaries, const AffineTransform& tileImageTransform) const; + PassOwnPtr createTileImage(const PatternAttributes&, const FloatRect& tileBoundaries, + const FloatRect& absoluteTileBoundaries, const AffineTransform& tileImageTransform, + FloatRect& clampedAbsoluteTileBoundaries) const; bool m_shouldCollectPatternAttributes : 1; PatternAttributes m_attributes; diff --git a/Source/WebCore/rendering/svg/SVGImageBufferTools.cpp b/Source/WebCore/rendering/svg/SVGImageBufferTools.cpp index f5f85a7..bf89e17 100644 --- a/Source/WebCore/rendering/svg/SVGImageBufferTools.cpp +++ b/Source/WebCore/rendering/svg/SVGImageBufferTools.cpp @@ -28,6 +28,8 @@ #include "RenderSVGContainer.h" #include "RenderSVGRoot.h" +static float kMaxImageBufferSize = 4096; + namespace WebCore { static AffineTransform& currentContentTransformation() @@ -113,13 +115,16 @@ IntSize SVGImageBufferTools::roundedImageBufferSize(const FloatSize& size) return IntSize(static_cast(lroundf(size.width())), static_cast(lroundf(size.height()))); } -FloatRect SVGImageBufferTools::clampedAbsoluteTargetRectForRenderer(const RenderObject* renderer, const FloatRect& absoluteTargetRect) +FloatRect SVGImageBufferTools::clampedAbsoluteTargetRect(const FloatRect& absoluteTargetRect) { - ASSERT(renderer); - - const RenderSVGRoot* svgRoot = SVGRenderSupport::findTreeRootObject(renderer); FloatRect clampedAbsoluteTargetRect = absoluteTargetRect; - clampedAbsoluteTargetRect.intersect(svgRoot->frameRect()); + + if (clampedAbsoluteTargetRect.width() > kMaxImageBufferSize) + clampedAbsoluteTargetRect.setWidth(kMaxImageBufferSize); + + if (clampedAbsoluteTargetRect.height() > kMaxImageBufferSize) + clampedAbsoluteTargetRect.setHeight(kMaxImageBufferSize); + return clampedAbsoluteTargetRect; } diff --git a/Source/WebCore/rendering/svg/SVGImageBufferTools.h b/Source/WebCore/rendering/svg/SVGImageBufferTools.h index 92b0e05..91c4753 100644 --- a/Source/WebCore/rendering/svg/SVGImageBufferTools.h +++ b/Source/WebCore/rendering/svg/SVGImageBufferTools.h @@ -40,7 +40,7 @@ public: static void clipToImageBuffer(GraphicsContext*, const AffineTransform& absoluteTransform, const FloatRect& clampedAbsoluteTargetRect, OwnPtr&); static void calculateTransformationToOutermostSVGCoordinateSystem(const RenderObject*, AffineTransform& absoluteTransform); - static FloatRect clampedAbsoluteTargetRectForRenderer(const RenderObject*, const FloatRect& absoluteTargetRect); + static FloatRect clampedAbsoluteTargetRect(const FloatRect& absoluteTargetRect); static IntSize roundedImageBufferSize(const FloatSize&); static void clear2DRotation(AffineTransform&); -- 2.7.4