roytam1
1956d3d66b
Merge remote-tracking branch 'origin/tracking' into custom
2023-08-08 10:09:40 +08:00
Brian Smith
42b2de6fe9
Issue #2285 - Ensure we don't try to treat non-DOM-Node event targets as such, https://bugzilla.mozilla.org/show_bug.cgi?id=1440809 Fix crash on https://beeper.notion.site
2023-08-08 09:43:09 +08:00
Brian Smith
6464b061c3
Issue #2026 - Follow-up: Support Big(U)Int64Array in crypto.getRandomValues. https://bugzilla.mozilla.org/show_bug.cgi?id=1718932
2023-08-08 09:42:55 +08:00
Brian Smith
dd4c0a44b6
Issue #2282 - - Properly implement Performance Timeline Level 2 w3c spec. https://bugzilla.mozilla.org/show_bug.cgi?id=1539006 Do not throw from PerformanceObserver.observe when none of the entryTypes are known. https://bugzilla.mozilla.org/show_bug.cgi?id=1403027 Implement PerformanceObserver::takeRecords(). https://bugzilla.mozilla.org/show_bug.cgi?id=1436692 "server" is not a valid PerformanceEntry type. https://bugzilla.mozilla.org/show_bug.cgi?id=1463065 Fix a null ptr crash in PerformanceObserver::Observe. https://bugzilla.mozilla.org/show_bug.cgi?id=1631346
2023-08-08 09:42:31 +08:00
roytam1
1977864a3a
Merge remote-tracking branch 'origin/tracking' into custom
2023-07-25 09:16:25 +08:00
Brian Smith
dc23241afb
Issue #1240 - Part 4 - Implement parser support for BigInt literals. https://bugzilla.mozilla.org/show_bug.cgi?id=1505849 Partially based on https://bugzilla.mozilla.org/show_bug.cgi?id=1456568 Un-result-ified the BigInt XDR code, so we can enable it. https://bugzilla.mozilla.org/show_bug.cgi?id=1419094 Uninitialised memory read with BigInt right-shift https://bugzilla.mozilla.org/show_bug.cgi?id=1679003
2023-07-25 09:09:57 +08:00
Brian Smith
07b6c03dc7
Issue #1240 - Part 3c - Fast-forward to the V8 version of BigIntType. Disabling some sections temporarily since the dependencies are not there yet. Based on the following: https://bugzilla.mozilla.org/show_bug.cgi?id=1502797 https://bugzilla.mozilla.org/show_bug.cgi?id=1471134 https://bugzilla.mozilla.org/show_bug.cgi?id=1441098 Part 3 & 4 Add structured clone support for BigInt and Enable BigInt wrapping from DOM bindings. https://bugzilla.mozilla.org/show_bug.cgi?id=1522738
2023-07-25 09:09:18 +08:00
roytam1
56216e737f
Merge remote-tracking branch 'origin/tracking' into custom
2023-07-14 10:22:44 +08:00
Brian Smith
1f5eaee101
Issue #2255 - Use Maybe<> in the Performance API.
2023-07-14 10:19:49 +08:00
roytam1
9f1550fb53
Merge remote-tracking branch 'origin/tracking' into custom
2023-07-06 10:39:29 +08:00
Moonchild
a299eaa965
[DOM] Filter out symlinks for webkitdirectory.
...
This is effectively a back-out of the following patches from Bug 1274959
except we add comments and test coverage:
- Part 1 which made the DirectoryListingTask include symlinks in the
results as exposed by Directory.getFilesAndDirectories.
- Part 3 which made GetFilesHelper include symlinks in the results.
Test coverage for getFilesAndDirectories is provided by
dom/filesystem/tests/test_basic.html by way of changes to its included
file dom/filesystem/tests/filesystem_commons.js and changes to the
createTreeFile helper in dom/filesystem/tests/script_fileList.js.
Test coverage for GetFilesHelper is provided by
dom/filesystem/tests/test_webkitdirectory.html and changes to the
createTestFile helper in dom/filesystem/tests/script_fileList.js.
Commenting out either of the `isLink` test in the relevant C++ code will
cause the given tests to fail on non-windows platforms.
2023-07-06 10:37:32 +08:00
roytam1
96e3781bd9
Merge remote-tracking branch 'origin/tracking' into custom
2023-05-24 09:03:14 +08:00
Brian Smith
106de86dc4
Issue #2252 - Prevent crash when attempting to load a script with execution disallowed. This issue is due to the ExecutionContext added in Issue #1691 not handling GetScript() in a context where script execution is not allowed. This expressed itself in crashes when playing MP4s with the NoScript extension installed and enabled.
2023-05-24 09:02:56 +08:00
FranklinDM
adaf6c3221
Issue #1592 - Follow-up: Ensure topmost scope marker is cleaned up
2023-05-24 09:02:40 +08:00
roytam1
a7a525c65e
Merge remote-tracking branch 'origin/tracking' into custom
2023-05-15 09:19:37 +08:00
Job Bautista
ae27fff4bb
Issue #2241 - Part 7.2 Follow-up: Fix build bustage due to unified building in Basilisk.
...
Tag #80
2023-05-15 09:13:28 +08:00
Job Bautista
e072ef0dfc
Issue #2241 - Part 8: Remove non-working layout.css.DOM*.enabled prefs.
...
A follow-up to fdfe7a8245eb33db252f2a9a3474ac931f15a7d8.
2023-05-15 09:13:07 +08:00
Job Bautista
4ec35fdcf2
Issue #2241 - Part 7.2: Implement .fromRect and .fromQuad.
...
Backported from Mozilla bug 1558101.
2023-05-15 09:12:47 +08:00
Job Bautista
0e2f687f4d
Issue #2241 - Part 7.1: Implement .fromFloat{32/64}Array.
...
Backported from Mozilla bug 1558101.
2023-05-15 09:12:41 +08:00
Job Bautista
10bdcb7e5f
Issue #2241 - Part 6: Implement DOMMatrix.fromMatrix.
...
Also fixes .multiply() to use DOMMatrixInit.
Backported from Mozilla bug 1560462.
2023-05-15 09:12:03 +08:00
Job Bautista
51f812bb80
Issue #2241 - Part 4&5 Follow-up: Fix WebIDL errors
...
Remove [Pref] attribute from Geometry interfaces as they're now exposed to web
workers too via Part 5.
Remove nonexistent toJSON objects erroneously added in Part 4.1.
2023-05-15 09:11:46 +08:00
Job Bautista
c3042a2f41
Issue #2241 - Part 5: Expose Geometry interfaces to web workers.
...
Exposes DOMMatrix, DOMPoint, DOMQuad, and DOMRect to workers.
Backported from Mozilla bug 1420580.
2023-05-15 09:11:24 +08:00
Job Bautista
840658ab39
Issue #2241 - Part 4.2: Resurrect DOMQuad.bounds, but deprecated.
...
This also forces DOMQuad.toJSON() to only return the points.
Backported from Mozilla bug 1186265.
2023-05-15 09:10:49 +08:00
Job Bautista
60c88dd11b
Issue #2241 - Part 4.1: Get DOMPoint, DOMQuad, DOMRect, DOMMatrix a bit closer to spec.
...
Backported from Mozilla bug 1186265's part 1.
2023-05-15 09:10:31 +08:00
Job Bautista
d2c3ea08eb
Issue #2241 - Part 3: Extend DOMMatrixReadOnly to allow instantiation with a Matrix4x4.
...
Backported from Mozilla bug 1355675.
2023-05-15 09:10:14 +08:00
roytam1
725b27a0f5
Merge remote-tracking branch 'origin/tracking' into custom
2023-05-05 23:02:05 +08:00
Martok
84eadbe3cf
No Issue - Do not parse or return body for XHRs with HEAD/CONNECT method or content-length=0
...
Based-on: m-c 1392220, 1437360
2023-05-05 23:00:30 +08:00
roytam1
6235ca420d
Merge remote-tracking branch 'origin/tracking' into custom
2023-05-04 10:47:54 +08:00
Moonchild
c9b8a576da
Issue #1656 - Remove more vim control lines.
...
Vim control lines were re-introduced or not entirely cleaned up.
This nukes them again.
Removing from dom. More to come.
2023-05-04 10:47:14 +08:00
roytam1
f0dfd9ac73
Merge remote-tracking branch 'origin/tracking' into custom
2023-05-02 23:56:43 +08:00
FranklinDM
ae50e9e01d
Issue #2225 - Implement Element.replaceChildren
...
This accounts for refactoring changes (e.g. avoids RemoveChild*
changes).
Partially based on https://bugzilla.mozilla.org/show_bug.cgi?id=1626015
2023-05-02 23:55:52 +08:00
Brian Smith
a1f787fc8c
Issue #1691 - Follow-up: Fix videojs and potentially other problems. When rewriting the ExecutionContext code in ScriptLoader I accidentally removed some required code.
2023-05-02 23:53:33 +08:00
roytam1
80d11ebc38
follow-up Issue #1691 - Part 6b, fix code that codepath is removed by upstream but remaining here
2023-04-30 21:45:57 +08:00
roytam1
beb68187e5
Merge remote-tracking branch 'origin/tracking' into custom
2023-04-30 21:26:08 +08:00
FranklinDM
62e2fbc4e9
Bug 1432272 - Make Fetch API use the global's base URL instead of the entry document's base URL
2023-04-30 21:23:32 +08:00
Brian Smith
a892a75903
Issue #1691 - Part 12: Fix return value in ExecScript() and debug assert in ParseTask. https://bugzilla.mozilla.org/show_bug.cgi?id=1331662 Replace nsJSUtils::EvaluateString calls by ExecutionContext scopes. ExecutionContext: The mRetValue is not used even though it is checked in various asserts. This is how it is in the Mozilla code even years later, only the passed in value is used. ParseTask: JoinDecode() and JoinCompile() run the same code but the type is different causing a debug assert when it checks the type Script vs ScriptDecode.
...
(cherry picked from commit 8f577428b7834b7d0f0d5afacbe060fbb1ff2136)
2023-04-30 21:22:00 +08:00
Brian Smith
edb82ec9f2
Issue #1691 - Part 11: Fix incorrect reference counting in ModuleScript class.
...
(cherry picked from commit 4ef1fa98c9518f5c107424667229ddb6f9f97767)
2023-04-30 21:21:45 +08:00
Brian Smith
7e056a6f72
Issue #1691 - Part 10: Add and use method to annotate CC crashes with a class name. https://bugzilla.mozilla.org/show_bug.cgi?id=1277260 Make PtrInfo into a class and mark it final. Also fix an erroneous debug assert because mBaseURL not set in one code path.
...
(cherry picked from commit a1890054011adf0cf87be0d56047418c9f201420)
2023-04-30 21:21:31 +08:00
Brian Smith
be916ef7ca
Issue #1691 - Part 9: Make import() work when the active script is in another document. https://bugzilla.mozilla.org/show_bug.cgi?id=1342012 Associate event handler with active script when they are compiled.
...
(cherry picked from commit 1a3cc5d6828a05a6309d959fad3c7e959ab9eb8d)
2023-04-30 21:21:19 +08:00
Brian Smith
1109559a5d
Issue #1691 - Part 8: Fix --enable-debug builds and continue dynamic module import changes. https://bugzilla.mozilla.org/show_bug.cgi?id=1342012 Support import from timeout handlers by associating the initiating script with the compiled JSScript. Fix error message that covers all import() failures that don't throw a JS exception. https://bugzilla.mozilla.org/show_bug.cgi?id=1331662 Partial - Replace nsJSUtils::EvaluateString calls by ExecutionContext scopes. Left EvaluateString() in nsXBLProtoImplField.cpp until ExecutionContext errors can be fixed.
...
(cherry picked from commit 22fcfc77971a9bb204df664c474681f4dcf54211)
2023-04-30 21:21:06 +08:00
Brian Smith
c69a47c393
Issue #1691 - Part 7f: Split up compile and execute so we can use ClassicScript. https://bugzilla.mozilla.org/show_bug.cgi?id=1342012 Refactor nsJSUtils::ExecutionContext to separate compilation and execution steps and allow extraction of compiled JSScript. https://bugzilla.mozilla.org/show_bug.cgi?id=1366773 Move buffer argument from JS::StartIncrementalEncoding to JS::FinishIncrementalEncoding.
...
(cherry picked from commit d4b520b08b958e116dfeeffdc61f3425610d1ce9)
2023-04-30 21:20:47 +08:00
Brian Smith
993476283d
Issue #1691 - Part 7e: Dependencies for required to finish part 7d. https://bugzilla.mozilla.org/show_bug.cgi?id=1331662 Reimplement EvaluateString using the ExecutionContext class. https://bugzilla.mozilla.org/show_bug.cgi?id=1316078 Extract redudant code into StartOffThreadParseTask. Use an ExclusiveContext instead of a JSContext in XDR functions. Add a script decoder as a valid off-main-thread parse-task. https://bugzilla.mozilla.org/show_bug.cgi?id=900784 Add nsJSUtils functions for encoding and decoding the bytecode. https://bugzilla.mozilla.org/show_bug.cgi?id=1316081 Add XDRIncrementalEncoder to replace delazified LazyScript in the encoded XDR buffer. Add an XDRIncrementalEncoder instance on the ScriptSource. Expose a new JSAPI to incrementally encode bytecode when it is generated. https://bugzilla.mozilla.org/show_bug.cgi?id=1334091 XDR function use the sourceObject instead of the enclosingScript as argument.
...
(cherry picked from commit d6de9a669f4b2f5115670bd771cd53d7cfb3956a)
2023-04-30 21:20:33 +08:00
Brian Smith
d5d7bb5e47
Issue #1691 - Part 7d: Allow dynamic import in cases where there's no referencing script or module. Support dynamic import from classic scripts by creating ClassicScript objects and associating them with the compiled. https://bugzilla.mozilla.org/show_bug.cgi?id=1342012 This patch is incomplete, some code in ScriptLoader::EvaluateScript() could not be applied for missing dependencies. Part 7e will apply the missing dependencies and finish the patch.
...
(cherry picked from commit ce31a906e801b72f06385b0755710317ccf3658b)
2023-04-30 21:20:19 +08:00
Brian Smith
41eda05e57
Issue #1691 - Part 7c: Refactor ModuleScript into ClassicScript class and LoadedScript base class so we can represent all scripts that can perform dynamic import. https://bugzilla.mozilla.org/show_bug.cgi?id=1342012
...
(cherry picked from commit c37b8b55231f6609c87e49c84edf7e94a1bf5518)
2023-04-30 21:20:05 +08:00
Brian Smith
ba01d99e31
Issue #1691 - Part 7b: Make load request element optional. https://bugzilla.mozilla.org/show_bug.cgi?id=1342012
...
(cherry picked from commit 169bb5d2ada59026fb6407716a7b3862810c9b97)
2023-04-30 21:19:50 +08:00
Brian Smith
c3daecc218
Issue #1691 - Part 6d: Optimize handling of internally-created Promise objects. https://bugzilla.mozilla.org/show_bug.cgi?id=1358879 The patch uses a different test: PROMISE_FLAG_DEFAULT_REJECT_FUNCTION which doesn't exist in our codebase. It was added in this bug, which appears to be partly complete: https://bugzilla.mozilla.org/show_bug.cgi?id=1313049
...
(cherry picked from commit 97fc74b693813eaaa9ab833d9c51fc5868ff039f)
2023-04-30 21:18:51 +08:00
Brian Smith
9a19e9d165
Issue #1691 - Part 6c: Fix a few issues with the earlier commits. Need PNK_CALL_IMPORT and PNK_IMPORT_META in the node children list or it will abort. When porting ScriptFetchOptions support, I had 2 constructors, I picked the wrong one. Missed adding the preference javascript.options.dynamicImport to all.js.
...
(cherry picked from commit b95ccb711dc41b343d02ae69b3dc4747bbbe86fb)
2023-04-30 21:18:24 +08:00
Brian Smith
86e0057ea7
Issue #1691 - Part 6b: Initial browser support for dynamic import from module scripts. https://bugzilla.mozilla.org/show_bug.cgi?id=1342012 Factor out script fetch options from script load request classes. https://bugzilla.mozilla.org/show_bug.cgi?id=1480720 Remove support for version parameter from script loader. https://bugzilla.mozilla.org/show_bug.cgi?id=1428745
...
(cherry picked from commit 3ec2529aa6303f6950622e3cb91a23580649c73b)
2023-04-30 21:18:11 +08:00
Brian Smith
3f4985ce6c
Issue #1691 - Part 3: Finish implementing import meta. https://bugzilla.mozilla.org/show_bug.cgi?id=1427610
...
(cherry picked from commit a8625238ac846fb7eb103646ddb8634a5860f067)
2023-04-30 21:17:00 +08:00
Brian Smith
1a6b3a822c
Issue #1691 - Part 1: Provide a way of associating a private value with a script or module.
...
This is a prerequisite for dynamic import
(cherry picked from commit 2e2972647ee29340df51a804f05e40fc1da2c89b)
2023-04-30 21:16:28 +08:00