Created attachment 197975 [details] Test case When a non-scaling stroke is in a scaling animation, it produces artifacts. Found while writing the test case for Bug 114578. See attached test case. Observed on Windows 7 @ Chrome stable, Windows 8 @ Chrome dev and Arch Linux @ Chromium 26.0.1410.63. Not observed on Android 4.2.1 @ Chrome latest. (The lines in the test case aren't perfectly in sync: the spline animating the "desired behavior" mockup was written via trial and error rather than calculation. The end result is what's important here.)
(In reply to comment #0) > See attached test case. Observed on Windows 7 @ Chrome stable, Windows 8 @ Chrome dev and Arch Linux @ Chromium 26.0.1410.63. Not observed on Android 4.2.1 @ Chrome latest. s/Windows 7 @ Chrome stable, Windows 8 @ Chrome dev/Windows 7 @ Chrome dev, Windows 8 @ Chrome stable/
Created attachment 197976 [details] Screenshot of bug Screenshot from Chrome stable on Windows 8.
Created attachment 197977 [details] Screenshot of bug Whoops, uploaded the wrong file.
I can reproduce with a WebKit nightly, but not with Safari 6.0.3. So, a regression.
Based on the behavior I'm seeing right now, this appears to have been fixed at some point between Chrome 55 and the current Chrome Canary I'm running: Google Chrome 57.0.2950.0 (Official Build) canary (64-bit) Revision 2c3ecceea409b42c873949bac0aa1acaa80451e3-refs/heads/master@{#438011} OS Windows JavaScript V8 5.7.206 Flash 24.0.0.175 User Agent Mozilla/5.0 (Windows NT 10.0.14393; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2950.0 Safari/537.36 Command Line "C:\Users\Stuart\AppData\Local\Google\Chrome SxS\Application\chrome.exe" --flag-switches-begin --enable-devtools-experiments --enable-experimental-canvas-features --enable-experimental-web-platform-features --javascript-harmony --flag-switches-end Executable Path C:\Users\Stuart\AppData\Local\Google\Chrome SxS\Application\chrome.exe Profile Path C:\Users\Stuart\AppData\Local\Google\Chrome SxS\User Data\Default Variations 16e0dd70-3f4a17df a444064c-1410f10 da89714-4ad60575 241fff6c-af68bc5e 1e528f0f-f23d1dea 6025934e-3f4a17df e197bfc9-ca7d8d80 8364a5c2-7330e714 7c1bc906-ff96eb58 9b8606c7-ca7d8d80 5829eceb-3d47f4f4 2a33b90e-380815a5 6f6207b1-ca7d8d80 ba3f87da-5b060836 5ca89f9-f23d1dea f3499283-ca7d8d80 76b48ab8-a2567007 31362330-3f4a17df f15c1c09-ca7d8d80 9e201a2b-3f4a17df 5274eb09-3f4a17df bcc907f7-3f4a17df 949c6e63-f23d1dea 9773d3bd-3f4a17df a4566d9e-3d47f4f4 93731dca-ed0f00cf 2e109477-4f8eb0c8 99144bc3-f23d1dea 9e5c75f1-f5bf8592 6b121ae7-5e15bfb2 f79cb77b-3f4a17df b7786474-d93a0620 23a898eb-ca7d8d80 4ea303a6-c4309646 3a007b7-f23d1dea 7aa46da5-4995b330 9736de91-3f4a17df 3326cd71-3f4a17df ad6d27cc-3e870323 ca314179-5d900007 69bf80fa-3f4a17df c5073fab-3f4a17df f3ea30a0-ca7d8d80 b2f0086-35a81a97 99c41f12-3f4a17df 7fc902e8-f23d1dea adda5502-ca7d8d80 d747916f-f23d1dea 477f6800-bbfbea97 6844d8aa-669a04e0 3ac60855-486e2a9c f296190c-19721340 4442aae2-6bdfffe7 ed1d377-e1cc0f14 75f0f0a0-e1cc0f14 e2b18481-4c073154 e7e71889-4ad60575 644b8345-726d8ace 61b920c1-48c6f5be 828a5926-71de01c2 Compiler MSVC 2015 (PGO)
rdar://85427884
I am still able to reproduce the following bug in Safari 15.5. It seems to be fixed in following Chrome bug: Link - http://crbug.com/232890
(In reply to Ahmad Saleem from comment #7) > I am still able to reproduce the following bug in Safari 15.5. It seems to > be fixed in following Chrome bug: > > Link - http://crbug.com/232890 Chrome did the changes in this commit: https://src.chromium.org/viewvc/blink?revision=149058&view=revision and it modified following: https://github.com/WebKit/WebKit/blob/ff25888b2eef782128acebdc87e973415f7d82d4/Source/WebCore/svg/SVGSVGElement.cpp#L379 ^ which is same as Chromium / Blink patch but Safari does not have this in SVGSVGElement.h: bool hasEmptyViewBox() const { return viewBoxIsValid() && viewBox().isEmpty(); } but it is is present here: https://github.com/WebKit/WebKit/blob/e98ff129bc8eba06ac17105f19c5f0e142aab853/Source/WebCore/svg/SVGFitToViewBox.h#L58