Bug 268376

Summary: [LegacySVG] SVG Marker is not showing if added in the next animation frame
Product: WebKit Reporter: Roman Bruckner <bruckner.roman>
Component: SVGAssignee: Nobody <webkit-unassigned>
Status: RESOLVED CONFIGURATION CHANGED    
Severity: Normal CC: ahmad.saleem792, alexander, caleb, graouts, rbuis, sabouhallawa, webkit-bug-importer, zimmermann
Priority: P2 Keywords: InRadar
Version: Safari 17   
Hardware: Unspecified   
OS: Unspecified   

Roman Bruckner
Reported 2024-01-30 06:16:11 PST
The SVG Marker is not displayed if the `marker-start` attribute is added in `requestAnimationFrame`. Here’s the minimum reproducible example: https://jsfiddle.net/kumilingus/k90h2Lt1/ Expected: The SVG path has the marker displayed. Actual: No SVG marker is shown It works in all other browsers. It used to work (not sure about the specific version). The bug has been introduced recently.
Attachments
Ahmad Saleem
Comment 1 2024-01-30 07:46:56 PST
I am able to reproduce this bug on Safari 17.3 and WebKit ToT (273745@main). @Roman - does this use to work earlier in Safari 16 or Safari 17.x? If yes, can you share the version number, it would be helpful.
Roman Bruckner
Comment 2 2024-01-30 08:11:53 PST
@ahmad Safari 16.6 is broken too. Sorry, that's all I know.
Radar WebKit Bug Importer
Comment 3 2024-02-06 06:17:19 PST
Alexander Nestorov
Comment 4 2024-02-19 01:58:44 PST
The jsfiddle works as expected in Safari 15.6.1 (17613.3.9.1.16), but it doesn't in Safari 16.4.1 (17615.1.26.101.10, 17615). Both tested in Monterey 12.5.1. Something got broken in between, maybe git bisect will be helpful?
Antoine Quint
Comment 5 2024-03-13 10:47:25 PDT
This is great information, I should be able to find the commit where this regressed.
Antoine Quint
Comment 6 2024-03-14 01:22:33 PDT
Going as far back as 253434@main, this bug reproduced.
Alexander Nestorov
Comment 7 2024-04-04 10:21:59 PDT
If I'm reading correctly the relation between safari and webkit engine version, the bug should be somewhere between 613.3.9 and 615.1.26. Is that correct?
Caleb Hearon
Comment 8 2024-05-30 07:51:39 PDT
I just encountered this bug. I don't think it has to do with RAF, but rather any change after the first render. The work-around is to remove the SVG element from the DOM and then add it back. Here's the repro I made, with repro on the first button click, work-around on the second: https://jsfiddle.net/51wgsby4/
Ahmad Saleem
Comment 9 2025-12-22 19:52:46 PST
Progressed with 304880@main.
Note You need to log in before you can comment on or make changes to this bug.