[FIXED] 11.0.44rc SVG problems
-
- Master Bug Buster
- Posts: 244
- Joined: Wed Jan 10, 2018 7:37 am
[FIXED] 11.0.44rc SVG problems
NS 11.0.44rc2: Still problem with SVGs that have inline scripts but no external scripts.
FF80: Scripts fail to run on every page load.
FF81: Scripts fail to run when navigating to about:newtab and back.
FF80: Scripts fail to run on every page load.
FF81: Scripts fail to run when navigating to about:newtab and back.
Mozilla/5.0 (Windows NT 10.0; rv:78.0) Gecko/20100101 Firefox/78.0
- Giorgio Maone
- Site Admin
- Posts: 9454
- Joined: Wed Mar 18, 2009 11:22 pm
- Location: Palermo - Italy
- Contact:
Re: 11.0.44rc SVG problems
Cannot reproduce in latest development build, but I'm not sure whether I've accidentally fixed it or there's something "wrong" with my test case:
v 11.0.44rc3
============================================================
x Fixed media placeholder not shown when blocking Youtube
movies
x Work around for unpredictable content script execution
order
x Ensure content of NoScript prompts is always visible
Code: Select all
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<script type="text/javascript"><![CDATA[
alert("SVG!");
]]></script>
</svg>
============================================================
x Fixed media placeholder not shown when blocking Youtube
movies
x Work around for unpredictable content script execution
order
x Ensure content of NoScript prompts is always visible
Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:81.0) Gecko/20100101 Firefox/81.0
-
- Master Bug Buster
- Posts: 244
- Joined: Wed Jan 10, 2018 7:37 am
Re: 11.0.44rc SVG problems
Still present in rc3. It's pretty hard to reproduce on FF81, but should happen quite often on FF80.
And there doesn't seem to be anything wrong with your test case. Happens with that too.
On FF81 the code hardly ever hits the document.write() due to the suspend working. On FF80 that is where it ends up most of the time.
The console output from that on is as follows:
Looks like the execution never reaches the dispatchEvents since some Promise never gets resolved.
And there doesn't seem to be anything wrong with your test case. Happens with that too.
On FF81 the code hardly ever hits the document.write() due to the suspend working. On FF80 that is where it ends up most of the time.
The console output from that on is as follows:
Code: Select all
Can't use document.write(), XML document? Error: Can't document.write() on image/svg+xml syncFetchPolicy.js:62:23
Unfreezing file:///script.svg DocumentFreezer.js:91:15
Replaced <script type="text/javascript"> syncFetchPolicy.js:94:31
sendSyncMessage finalizing SyncMessage.js:239:19
sendSyncMessage resume #0/0 - 112ms SyncMessage.js:235:19
sendSyncMessage finalizing SyncMessage.js:239:19
Mozilla/5.0 (Windows NT 10.0; rv:78.0) Gecko/20100101 Firefox/78.0
- Giorgio Maone
- Site Admin
- Posts: 9454
- Joined: Wed Mar 18, 2009 11:22 pm
- Location: Palermo - Italy
- Contact:
Re: 11.0.44rc SVG problems
Should be fixed in latest development build, thanks.
v 11.0.44rc4
============================================================
x Fixed namespacing issues with script replacements
x Fixed typo in content script ordering work-around
v 11.0.44rc4
============================================================
x Fixed namespacing issues with script replacements
x Fixed typo in content script ordering work-around
Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:81.0) Gecko/20100101 Firefox/81.0
Re: 11.0.44rc SVG problems
src/content/syncFetchPolicy.jsGiorgio Maone wrote: ↑Sun Sep 13, 2020 10:46 pm Should be fixed in latest development build, thanks.
v 11.0.44rc4
Code: Select all
if (ocumentFreezer.suppressedScripts === 0 && readyState === "loading")
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:80.0) Gecko/20100101 Firefox/80.0
- Giorgio Maone
- Site Admin
- Posts: 9454
- Joined: Wed Mar 18, 2009 11:22 pm
- Location: Palermo - Italy
- Contact:
Re: 11.0.44rc SVG problems
Sorry, it happened because I had suppressed that line in order to force the reproducibility of the issue.musonius wrote: ↑Mon Sep 14, 2020 5:35 am src/content/syncFetchPolicy.js
You killed the 'D' in this commit.Code: Select all
if (ocumentFreezer.suppressedScripts === 0 && readyState === "loading")
Fixed in rc5.
Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:81.0) Gecko/20100101 Firefox/81.0
-
- Master Bug Buster
- Posts: 244
- Joined: Wed Jan 10, 2018 7:37 am
Re: 11.0.44rc SVG problems
External and inline scripts run fine now.
However, onload event attribute in <svg> does not execute. load/DOMContentLoaded added with addEventListener do fire though.
However, onload event attribute in <svg> does not execute. load/DOMContentLoaded added with addEventListener do fire though.
Mozilla/5.0 (Windows NT 10.0; rv:78.0) Gecko/20100101 Firefox/78.0
- Giorgio Maone
- Site Admin
- Posts: 9454
- Joined: Wed Mar 18, 2009 11:22 pm
- Location: Palermo - Italy
- Contact:
Re: 11.0.44rc SVG problems
Do I need to do anything special to reproduce?skriptimaahinen wrote: ↑Mon Sep 14, 2020 7:10 am However, onload event attribute in <svg> does not execute. load/DOMContentLoaded added with addEventListener do fire though.
I've tried both on 80 and 81b, with and without external scripts, forcing soft reload and suppressing it, but it seems to work always for me.
Test file:
Code: Select all
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" onload="console.log('onload')">
<script type="text/javascript"><![CDATA[
console.log("SVG!");
]]></script>
</svg>
Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:81.0) Gecko/20100101 Firefox/81.0
- Giorgio Maone
- Site Admin
- Posts: 9454
- Joined: Wed Mar 18, 2009 11:22 pm
- Location: Palermo - Italy
- Contact:
Re: 11.0.44rc SVG problems
Nevermind, even thought I couldn't actually reproduce essentially because my all my synchronous calls terminated in when document.readyState was still "loading", I've probably figured out what's happening to you and hopefully fixed it in latest development build rc7. Thanks.
Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:81.0) Gecko/20100101 Firefox/81.0
-
- Master Bug Buster
- Posts: 244
- Joined: Wed Jan 10, 2018 7:37 am
Re: 11.0.44rc SVG problems
Should have pointed out that this indeed happens when soft reloading and the readyState is "completed". I can achieve this by using the "navigate to about:newtab and back".
The patch does fix it for my test cases, but now your test case (the older one with alert) fires the onload twice.
When doing normal reload:
If the "newtab reload" is used, the readyState is "complete" and only one onload fires.
The patch does fix it for my test cases, but now your test case (the older one with alert) fires the onload twice.
When doing normal reload:
Code: Select all
Readystate: interactive, suppressedScripts = 1, canScript = true syncFetchPolicy.js:28:17
Can't use document.write(), XML document? Error: Can't document.write() on image/svg+xml syncFetchPolicy.js:62:23
Unfreezing file:///script.svg DocumentFreezer.js:91:15
onload script.svg:1:9
// Execution proceeds after dismissing the alert.
Resolving on afterscriptexecute <script type="text/javascript"> syncFetchPolicy.js:86:33
Replaced <script type="text/javascript"> syncFetchPolicy.js:94:31
sendSyncMessage finalizing SyncMessage.js:239:19
ALl scripts done, firing completion events. syncFetchPolicy.js:97:27
onload script.svg:1:9
sendSyncMessage resume #0/0 - 5508ms SyncMessage.js:235:19
sendSyncMessage finalizing SyncMessage.js:239:19
Mozilla/5.0 (Windows NT 10.0; rv:78.0) Gecko/20100101 Firefox/78.0
- Giorgio Maone
- Site Admin
- Posts: 9454
- Joined: Wed Mar 18, 2009 11:22 pm
- Location: Palermo - Italy
- Contact:
Re: 11.0.44rc SVG problems
Please check latest development build, thanks.
v 11.0.45rc1
============================================================
x Better emulation of SVG events
v 11.0.45rc1
============================================================
x Better emulation of SVG events
Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:81.0) Gecko/20100101 Firefox/81.0
-
- Master Bug Buster
- Posts: 244
- Joined: Wed Jan 10, 2018 7:37 am
Re: 11.0.44rc SVG problems
Looks good. Thanks!
Mozilla/5.0 (Windows NT 10.0; rv:78.0) Gecko/20100101 Firefox/78.0