gecko-dev/dom
Rob Wu 618a64cb28 Bug 1465388 - Resume about:blank parser upon unblocking the document r=hsivonen
When `document.blockParsing()` is called, the nsIParser is suspended
until the document is unblocked. For about:blank documents, this is a
nsParser.

When a document is unblocked, nsParser::ContinueInterruptedParsingAsync
is invoked, which delegates its implementation to nsIContentSink, which
is a nsHTMLContentSink for about:blank documents. Due to a missing
implementation of nsHTMLContentSink::ContinueInterruptedParsingAsync,
the parser was never resumed, causing bug 1465388 and bug 1407501.

This patch fixes the problem, by implementing the required method (and
using a load blocker to ensure that the (about:blank) document does not
finish before the parser finishes).

This patch is tested through extension tests: Currently document_start
stylesheets always activate the parser blocker, and document_start
scripts trigger the parser blocker when the script has not been
preloaded yet (e.g. at the first run).
Before this patch, the test failed due to the assertion failure as
reported in the linked bugs. After this patch, the tests pass.

Differential Revision: https://phabricator.services.mozilla.com/D4352

--HG--
extra : moz-landing-system : lando
2018-08-28 05:28:21 +00:00
..
abort Bug 1478101 - Split AbortSignal in 2 classes: AbortSignal and AbortSignalImpl, r=bz 2018-08-26 14:16:21 +02:00
animation Bug 1467344 - Move tests from dom/animations/tests/css-transitions to WPT; r=hiro 2018-08-16 14:41:04 +09:00
asmjscache Bug 1471018 - Speed-up AsmJSCache shutdown by setting the shutdown requested flag; r=asuth 2018-08-14 08:22:43 +02:00
audiochannel Bug 1481645 - Remove some redundant uses of do_QueryInterface. r=bzbarsky 2018-08-13 09:05:19 +00:00
base Bug 1465388 - Resume about:blank parser upon unblocking the document r=hsivonen 2018-08-28 05:28:21 +00:00
battery Bug 1482753 - Move battery/Types.h into hal/ and BatteryObserver into hal namespace. r=gsvelto 2018-08-13 10:57:50 +09:00
bindings Backed out changeset df602a252b66 (bug 1485946) for Linting failure. CLOSED TREE 2018-08-27 21:41:38 +03:00
broadcastchannel Bug 1480780 - Merge the privacy.3rdpartystorage.enabled pref with the network.cookie.cookieBehavior pref; r=ehsan 2018-08-13 16:01:16 -04:00
browser-element Bug 1259822 - Show property key in the error message when target object value is null or undefined. r=jorendorff 2018-08-24 13:22:13 +09:00
cache Bug 1361330 - Part 1: Make quota stream constructors public and move the Create() helpers outside of the stream classes; r=asuth 2018-08-20 14:32:33 +02:00
canvas Bug 1482613 - Make WebVR work with multiprocess enabled on Android r=kip,rbarker,kvark 2018-08-24 15:32:12 +00:00
chrome-webidl Backed out changeset df602a252b66 (bug 1485946) for Linting failure. CLOSED TREE 2018-08-27 21:41:38 +03:00
clients Bug 1479363 part 5 - Use JSAutoRealm instead of JSAutoRealmAllowCCW in remaining dom/ directories. r=mccr8 2018-08-02 08:49:00 +02:00
commandhandler Bug 1484496: Part 4b - Add intrinsic type information to most nsSimpleEnumerators. r=froydnj 2018-08-18 21:06:32 -07:00
console Bug 1484466: Part 2a - Remove no-op generateCI calls. r=mccr8 2018-08-18 12:38:31 -07:00
credentialmanagement Bug 1470325 - s/FooBinding/Foo_Binding/g - r=qdot 2018-06-26 17:05:01 -07:00
crypto Bug 1453795 - DOM/Crypto - Initialize member fields in classes/ structures. r=mt 2018-07-11 10:37:57 +03:00
encoding Bug 1369941: Replace single integers N in fuzzy() and fuzzy-if() with 0-N ranges. r=dholbert 2018-08-09 20:10:21 +00:00
events Backed out changeset 8427667b7c9a (bug 1452569) for wpt failures on /dom/interfaces.html. CLOSED TREE 2018-08-27 12:23:22 +03:00
fetch Bug 1478101 - Split AbortSignal in 2 classes: AbortSignal and AbortSignalImpl, r=bz 2018-08-26 14:16:21 +02:00
file Bug 1485029 - Use SIMD for PopulateBufferForBinaryString() in FileReader.cpp. r=smaug 2018-08-22 13:59:43 +00:00
filehandle Bug 1361330 - Part 2: Move MemoryOutputStream to a generic place; r=asuth 2018-08-20 14:32:48 +02:00
filesystem Bug 1470325 - s/FooBinding/Foo_Binding/g - r=qdot 2018-06-26 17:05:01 -07:00
flex Bug 1477856: In flexbox devtools API, report max-width:none as +infinity. r=bradwerth 2018-07-27 21:38:46 +00:00
gamepad Bug 1473193 - Don't use dom/gamepad/linux on non-Linux OSes. r=qdot 2018-07-03 17:54:32 -07:00
geolocation Bug 1470325 - s/FooBinding/Foo_Binding/g - r=qdot 2018-06-26 17:05:01 -07:00
grid Bug 1470325 - s/FooBinding/Foo_Binding/g - r=qdot 2018-06-26 17:05:01 -07:00
html Bug 1465388 - Resume about:blank parser upon unblocking the document r=hsivonen 2018-08-28 05:28:21 +00:00
imptests
indexedDB Bug 1361330 - Part 3: Use fully qualified name when declaring ref counting for IDB quota client; r=asuth 2018-08-20 14:32:56 +02:00
interfaces Merge inbound to mozilla-central. a=merge 2018-08-17 12:46:14 +03:00
ipc Bug 1457092 - Implement sandboxing on OpenBSD. r=gcp, r=jld 2018-08-23 07:35:00 -04:00
jsurl Bug 1382035. Treat Promise return values like undefined for javascript: urls. r=peterv 2018-07-23 16:18:33 -04:00
locales Bug 1471502 - Misleading console error message fixed r=ckerschb 2018-07-08 02:16:12 +03:00
manifest Bug 1405428 - skip-if = verify on mochitests which do not pass test-verify. r=gbrown 2018-06-10 05:01:47 -04:00
mathml Bug 1481601 - Remove now-useless aPreallocateChildren from nsINode::Clone() and friends. r=bzbarsky 2018-08-08 23:58:44 +00:00
media Merge mozilla-inbound to mozilla-central. a=merge 2018-08-27 18:51:27 +03:00
messagechannel Bug 1450167. Stop using atom-or-string for event names in the listener manager. r=smaug 2018-07-24 18:15:19 -04:00
midi Bug 1450167. Stop using atom-or-string for event names in the listener manager. r=smaug 2018-07-24 18:15:19 -04:00
network Bug 1482753 - Move network/Types.h into hal/ and NetworkObserver into hal namespace. r=gsvelto 2018-08-13 10:57:50 +09:00
notification Bug 1452743. Stop using the no-arg DOMEventTargetHelper constructor from Notification. r=smaug 2018-07-24 18:15:22 -04:00
offline Bug 1402247 - Use encoding_rs for XPCOM string encoding conversions. r=Nika,erahm,froydnj. 2018-08-14 14:43:42 +03:00
payments Bug 1483156 - Currency of PaymentItem total should be 'USD', but got BOB r=edenchuang 2018-08-21 20:16:00 +03:00
performance Bug 1481195 - The current document should have access to its PerformanceTimingData, r=valentin 2018-08-06 21:27:00 +02:00
permission Bug 1278831 - PermissionStatus must keep itself alive when it has a event listener, r=smaug 2018-08-01 00:19:12 +02:00
plugins Bug 1483240 - Disable plugins in recording/replaying processes, r=jimm. 2018-08-21 00:56:47 +00:00
power Bug 1482753 - Move power/Types.h into hal/ and WakeLockObserver into hal namespace. r=gsvelto 2018-08-13 10:57:50 +09:00
presentation bug 1485087 - remove the option to use the TLS session cache from nsITLSServerSocket r=jryans,mayhemer 2018-08-24 16:00:34 +00:00
prio Backed out 6 changesets (bug 1421501) for bustages on security/nss/lib/freebl/mpi/mp_comba.c on a CLOSED TREE 2018-08-23 17:13:42 +03:00
promise Bug 1484373: Part 2c - Add Promise::Then handler which accepts a lambda. r=smaug 2018-08-18 09:43:22 -07:00
push Bug 1484496: Part 5e - Convert remaining nsISimpleEnumerator users to use JS iteration. r=mccr8 2018-08-18 18:13:14 -07:00
quota Bug 1485971 - Followup for enabling test on Beta and Release for bug 1482812; r=janv 2018-08-24 15:16:26 +02:00
res
script Bug 1469599 - Associate all module scripts in a module graph with DOM elements before execution r=hsivonen 2018-08-22 14:54:17 +01:00
security Bug 1475448 - Add ContentSecurityPolicyParser fuzzing target. r=ckerschb, sr=decoder 2018-08-24 08:30:24 +00:00
serviceworkers Bug 1472303 - Backed out changeset 8a40d04dfcbb. r=asuth 2018-08-24 10:24:28 -04:00
simpledb Bug 1361330 - Part 6: Gate SimpleDB behind a preference; r=asuth 2018-08-20 14:33:17 +02:00
smil Bug 1483882 - Teach IDTracker about Shadow DOM. r=smaug 2018-08-17 22:01:52 +02:00
storage Bug 1475218 - Disable PBackgroundLocalStorageCache on Android; r=asuth 2018-08-21 17:27:42 +02:00
svg Bug 1246764 - Part 3: Layout part for |clip-path: path()|. r=jwatt 2018-08-24 11:37:55 -07:00
system Bug 1479354 - Null-check this.listener when reporting cached geolocation values r=jdm 2018-07-31 20:23:24 +07:00
tests Backed out changeset 9b254e372c54 (bug 1336075) for "=" missing in the skip-if line. CLOSED TREE 2018-08-24 15:21:27 +03:00
u2f Bug 1259822 - Show property key in the error message when target object value is null or undefined. r=jorendorff 2018-08-24 13:22:13 +09:00
url Bug 1481719 - Disable profile-instr-out-of-date warnings explicitly rather than allowing all warnings where they appear. r=dmajor 2018-08-09 06:07:33 +09:00
vr Bug 1369941: Replace single integers N in fuzzy() and fuzzy-if() with 0-N ranges. r=dholbert 2018-08-09 20:10:21 +00:00
webauthn Bug 1480365: WebAuthManager doesn't need to keep alive AbortSignal, r=smaug 2018-08-06 21:01:53 +02:00
webbrowserpersist Bug 1402247 - Use encoding_rs for XPCOM string encoding conversions. r=Nika,erahm,froydnj. 2018-08-14 14:43:42 +03:00
webgpu Bug 1469376 - Initial stubs for WebGPU sketch API. - r=kvark,qdot 2018-06-13 10:43:48 -07:00
webidl Backed out changeset 8427667b7c9a (bug 1452569) for wpt failures on /dom/interfaces.html. CLOSED TREE 2018-08-27 12:23:22 +03:00
websocket Bug 1446940 part 5. Stop getting docshells from windows via getInterface in dom/editor/etc code. r=kmag 2018-08-01 13:07:11 -04:00
workers Bug 1472303 - Backed out changeset 8a40d04dfcbb. r=asuth 2018-08-24 10:24:28 -04:00
worklet Bug 1317481 - Optimize away Generator/Promise handling for await in the topmost JS frame with already resolved/rejected Promise. r=anba,smaug 2018-08-02 16:11:57 +09:00
xbl Bug 1466722 - Remove remaining references to nsCSSRuleProcessor since it has been removed. r=heycam 2018-08-22 01:29:39 +00:00
xhr Bug 1484421 - Move JSON-related functionality into js/public/JSON.h that isn't #include'd in jsapi.h. r=jandem 2018-08-20 07:54:45 -07:00
xml Bug 1481601 - Remove now-useless aPreallocateChildren from nsINode::Clone() and friends. r=bzbarsky 2018-08-08 23:58:44 +00:00
xslt Bug 1402247 - Use encoding_rs for XPCOM string encoding conversions. r=Nika,erahm,froydnj. 2018-08-14 14:43:42 +03:00
xul Bug 1482170 - Remove <Add/Remove>BroadcastListenerFor on XULDocument webidl. r=bz 2018-08-15 09:14:23 -07:00
jar.mn
moz.build Backed out changeset df602a252b66 (bug 1485946) for Linting failure. CLOSED TREE 2018-08-27 21:41:38 +03:00