SVG disappears if `translate` has a large value.
Reported by
ppotacz...@gmail.com,
Dec 3
|
|||||||
Issue descriptionUserAgent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36 Example URL: http://jsfiddle.net/BlackLabel/7sx5tm43/ Steps to reproduce the problem: 1. Open jsFiddle in Chrome: http://jsfiddle.net/BlackLabel/7sx5tm43/ 2. 3. What is the expected behavior? Open jsFiddle: http://jsfiddle.net/BlackLabel/fbzLokg7/ or open jsFiddle in Firefox: http://jsfiddle.net/BlackLabel/7sx5tm43/ What went wrong? SVG becomes invisible if `translate` has a large value. `<g transform="translate(0,-9000000000)">` Does it occur on multiple sites: Yes Is it a problem with a plugin? No Did this work before? N/A Does this work in other browsers? Yes Chrome version: 70.0.3538.110 Channel: stable OS Version: OS X 10.14.0 Flash Version:
,
Dec 4
,
Dec 4
Able to reproduce the issue on reported version 70.0.3538.110 and latest chrome 73.0.3268.0 using Mac 10.12.6, Ubuntu 17.10 and Windows-10, hence providing Bisect Info Bisect Info: ================ Good build: 64.0.3274.0 Bad build: 64.0.3275.0 You are probably looking for a change made after 518391 (known good), but no later than 518392 (first known bad). https://chromium.googlesource.com/chromium/src/+log/fbcb74e2d49d7850fd3a307d267f8e1124139d56..e9bd34c60d38b0b5bcee52a6cd475b9124974aab Change-Id: Id0228bc78bb7d8db223be082106f3c3d2bcb038a Reviewed-on: https://chromium-review.googlesource.com/774746 @Fredrik Söderquist: Please confirm the issue and help in re-assigning if it is not related to your change. Thanks!
,
Dec 4
,
Dec 4
++Correction in latest chrome version# 73.0.3628.0
,
Dec 4
Given that making the <svg> have 'overflow: hidden' (i.e removing the inline style overriding the UA rule) makes it display again, woxxom's bisect result seems more likely to be correct. I guess this is caused by overflow somewhere yielding an empty rectangle when it shouldn't.
,
Dec 4
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/acc79f1cd39645d800757d7cfb09e4740a89ceab commit acc79f1cd39645d800757d7cfb09e4740a89ceab Author: Fredrik Söderquist <fs@opera.com> Date: Tue Dec 04 21:13:23 2018 Clamp contents visual overflow for LayoutSVGRoot If the contents overflow rect for the SVG root is too large, it could end up shifting the overflow rect such that it is culled and thus never painted. To avoid this, clip the content overflow rect with LayoutRect::InfiniteIntRect(). This gives reasonable enough leeway, and also matches the rect that is commonly used to represent infinity for culling and clipping etc. Bug: 911186 Change-Id: I22d505ac0582f4d1fe6ac3ead9041c4a87176994 Reviewed-on: https://chromium-review.googlesource.com/c/1361225 Reviewed-by: Stephen Chenney <schenney@chromium.org> Commit-Queue: Fredrik Söderquist <fs@opera.com> Cr-Commit-Position: refs/heads/master@{#613692} [modify] https://crrev.com/acc79f1cd39645d800757d7cfb09e4740a89ceab/third_party/blink/renderer/core/layout/svg/layout_svg_root.cc [modify] https://crrev.com/acc79f1cd39645d800757d7cfb09e4740a89ceab/third_party/blink/renderer/core/layout/svg/layout_svg_root.h [add] https://crrev.com/acc79f1cd39645d800757d7cfb09e4740a89ceab/third_party/blink/web_tests/svg/overflow/large-overflow-expected.html [add] https://crrev.com/acc79f1cd39645d800757d7cfb09e4740a89ceab/third_party/blink/web_tests/svg/overflow/large-overflow.html
,
Dec 5
Able to reproduce the issue on chrome reported version 70.0.3538.110(Build without fix) Verified the fix on Mac 10.12.6, Windows-10 & Ubuntu 17.10 on Chrome version #73.0.3631.0 as per the comment#0 Attaching screenshot for reference. Observed "Able to see SVG image in jsfiddle" Hence, the fix is working as expected. Adding the verified label. Thanks!
,
Dec 5
|
|||||||
►
Sign in to add a comment |
|||||||
Comment 1 by woxxom@gmail.com
, Dec 3