Moonchild
b4af6b6265
No issue - Set the default for incremental cycle collector to be off.
...
Negative performance impact if enabled.
2023-06-05 21:17:24 +02:00
Moonchild
ae1d53ceb1
Issue #2257 - Remove rematerialized frames after bailouts and exceptions.
...
This ensures that rematerialized frames used by the devtools debugger
are properly removed so that no stale data is used during bailouts.
2023-06-05 21:17:13 +02:00
Brian Smith
c3f4709d5e
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-06-05 21:16:57 +02:00
FranklinDM
a7bb3fc175
Issue #1592 - Follow-up: Ensure topmost scope marker is cleaned up
2023-06-05 21:16:43 +02:00
FranklinDM
6a0203f25f
Issue #2250 - Part 2: Ignore the ancestor filter assertion if rule matching is restricted or if the current element is under a shadow host
...
This only affects debug builds.
2023-06-05 21:16:31 +02:00
FranklinDM
b0dfcb147f
Issue #2250 - Part 1: Return early if the element being tested for is likely an ancestor and does not have an assigned slot
2023-06-05 21:16:22 +02:00
Job Bautista
06fd4c9357
Issue #2221 - Follow-up: Simplify jit_ioncheck{1|2|3}_deunified_sources assignment.
2023-06-05 21:15:52 +02:00
Job Bautista
b9ea7fd9ee
Issue #2221 - Follow-up: Ensure jit_ioncheck{1|2|3}_deunified_sources is defined.
...
Should fix build bustage in armhf, as well as prevent bustage in mips32.
2023-06-05 21:15:33 +02:00
Moonchild
58308a5c7a
Merge branch 'master' into release
...
# Conflicts:
# python/mozbuild/mozpack/dmg.py
2023-05-11 17:35:14 +02:00
Moonchild
aed983c97b
No issue - block a few problematic DLLs.
2023-05-11 01:13:44 +02:00
Moonchild
ab3e0ceef7
No issue - Disable ms-cxh and ms-cxh-full protocol handling.
2023-05-11 00:10:27 +02:00
Moonchild
0fcefb9d0a
[widget] Rewrite data-read loop in OnDataAvailable.
...
The read-loop in OnDataAvailable was needlessly baroque and used a very
strange dialect of Hungarian notation. Factored out the zero-element
case for simplicity, and added justification in comments as-appropriate.
2023-05-10 23:15:23 +02:00
Moonchild
8666ce68fc
No issue - Limit JPEG decoder memory allocation to surface cache size.
...
This means that for trivial images whose header specifies large
dimensions but with no image data, we don't waste a lot of memory.
See BZ bug 1277397
2023-05-10 22:50:22 +02:00
Moonchild
f9f3dfd1ac
Merge pull request 'Fix import.meta module error in lambdas by moving parseGoal() into SharedContext.' ( #2238 ) from dbsoft/UXP:importmeta into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2238
2023-05-09 07:44:27 +00:00
Moonchild
8395e1f700
Merge pull request 'Updates to Mac packaging for notarization.' ( #2239 ) from dbsoft/UXP:macentitlements into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2239
2023-05-09 07:36:08 +00:00
Brian Smith
688394928d
No Issue - Updates to Mac packaging for notarization. Add Mac entitlements.
...
Switch to using "create" instead of "makehybrid" when creating the disk image.
This fixes bogus extended attributes which interfere with the code signature.
Finally add any -bin or dylibs in the Resources folder since --deep skips that folder.
2023-05-08 20:18:12 -05:00
Brian Smith
13536bf8c9
Issue #2236 - Fix import.meta module error in lambdas by moving parseGoal() into SharedContext.
...
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1604792
Also remove ParseGoal being passed through Parser introduced in #1691 Part 2.
2023-05-08 18:28:18 -05:00
Moonchild
2971cffab4
Merge pull request 'Create async function wrapper when instantiating module functions' ( #2235 ) from FranklinDM/UXP-contrib:work_js-async-func-in-modules into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2235
2023-05-06 19:52:30 +00:00
FranklinDM
ca10d0ad23
Issue #2234 - Part 3: Update tests
...
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1402649 and https://bugzilla.mozilla.org/show_bug.cgi?id=1382306
2023-05-07 01:01:23 +08:00
FranklinDM
e381dd84c2
Issue #2234 - Part 2: Ensure that the created async function wrapper is valid
...
This excludes the GC-related changes (cell pointer asserts) since we don't have them. This bug should be revisited if we'd ever plan on porting those asserts over.
Partially based on https://bugzilla.mozilla.org/show_bug.cgi?id=1402649
2023-05-07 01:01:22 +08:00
FranklinDM
4b516daf13
Issue #2234 - Part 1: Create async function wrapper when instantiating module functions
...
This excludes the change that removes "excessive" rooting from the Lambda* methods in Interpreter.cpp.
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1382306
2023-05-07 01:01:21 +08:00
Moonchild
a928dac2f1
Merge pull request 'Parse exported async functions.' ( #2233 ) from jobbautista9/UXP:2232-exportasync into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2233
2023-05-06 08:11:54 +00:00
Job Bautista
42f88e499d
Issue #2232 - Parse exported async functions.
2023-05-06 15:32:59 +08:00
Moonchild
83edd9cfc6
Issue #1691 - Follow-up: Ship dynamic module imports enabled by default.
2023-05-05 16:07:21 +02:00
Moonchild
08a7bb2e70
Merge pull request 'Do not parse or return body for XHRs with HEAD/CONNECT method or content-length=0' ( #2231 ) from martok/UXP-contrib:mr/xhr-parse-body into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2231
2023-05-05 13:55:17 +00:00
Moonchild
e7e10ab287
Issue #1656 - Remove more vim control lines.
...
Vim control lines were re-introduced or not entirely cleaned up.
This nukes them again.
Removing from accessible, [root], tools, uriloader, widget, xpcom and
xpfe.
Resolves #1656
2023-05-05 15:53:29 +02:00
Moonchild
b9da018639
Issue #1656 - Remove more vim control lines.
...
Vim control lines were re-introduced or not entirely cleaned up.
This nukes them again.
Removing from modules, netwerk, security, storage, testing, toolkit, and
a few scattered misc files. More to come.
2023-05-05 15:20:27 +02:00
Moonchild
5eab50c9f9
Issue #1656 - Remove more vim control lines.
...
Vim control lines were re-introduced or not entirely cleaned up.
This nukes them again.
Removing from embedding, extensions, gfx, hal, ipc, layout, mailnews,
media and memory. More to come.
2023-05-04 22:06:35 +02:00
Martok
285cc24da6
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-04 21:03:16 +02:00
Moonchild
1e50ffb192
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 03:33:25 +02:00
Moonchild
ce594b49ca
Issue #1656 - Remove more vim control lines.
...
Vim control lines were re-introduced or not entirely cleaned up.
This nukes them again.
Removing from the rest of js, caps, chrome, config, devtools, docshell,
image, intl. More to come.
2023-05-03 22:09:21 +02:00
Moonchild
5d4f11bfaf
Issue #1656 - remove vim control lines from js/src
...
With recent work a bunch more vim control lines were re-introduced.
This nukes them again.
2023-05-03 20:17:09 +02:00
Moonchild
b30d6d72f7
Bump platform version.
2023-05-03 19:56:24 +02:00
Moonchild
127bf5784a
Merge pull request 'JS: Implement Class Fields & Logical Assignment Operators' ( #2224 ) from martok/UXP-contrib:mr/class-fields into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2224
Reviewed-by: Moonchild <moonchild@palemoon.org >
2023-05-03 17:29:59 +00:00
Moonchild
36ea7f9a5c
Merge pull request 'Fix videojs and potentially other problems.' ( #2228 ) from dbsoft/UXP:1691fix into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2228
2023-05-02 19:06:08 +00:00
Brian Smith
c29f841bdc
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 10:44:02 -05:00
Brian Smith
88c7d54975
No Issue - Fix FreeBSD build failure with WebRTC enabled. (release uplift)
...
Tag #2227
2023-05-01 22:12:11 +02:00
Timothy Valldeperas
eadb5678b3
Issue #2175 - Fix build bustage in WebRTC. (release uplift)
...
Resolves #2227
2023-05-01 19:04:57 +02:00
Martok
63a00fdd25
Issue #2097 - Handle Logical Assignment in Ion CFG
2023-05-01 17:16:22 +02:00
Martok
3d38507c23
Issue #2097 - Implement logical assignment operators
...
Based-on: 1629106/1, 1684020
2023-05-01 17:16:22 +02:00
Martok
12626eeba3
Issue #2142 - Remove the temporary fields option
...
Now that everything is finished, we don't need the feature flag any more.
2023-05-01 17:16:21 +02:00
Martok
5e32190186
Issue #2142 - Implement class static block
...
Based-on: m-c 1712138/{2,3}, 1713155/2
2023-05-01 17:16:21 +02:00
Martok
7b74607f1f
Issue #2142 - Track isFieldInitializer on JSScript instead of Scope
...
Introduce a FunctionSyntaxKind for FieldInitializer since special rules
(around `arguments`) apply. At the same time we can move the flag from the
scope to the JSScript. This is similar to how derived constructors are handled
and makes the initWithEnclosingScope code closer to initWithEnclosingContext.
This version is a bit more complex than Mozilla's due to different storage of
bit flags on JSScript.
Based-on: m-c 1636800
2023-05-01 17:16:21 +02:00
Martok
0f3f695117
Issue #2142 - Parse and process static class fields
...
Based-on: m-c 1535804/{6,7}
2023-05-01 17:16:21 +02:00
Martok
09956fe9e4
Issue #2142 - Support SuperProperty in field initializers
...
Based-on: m-c 1555037/2
2023-05-01 17:16:20 +02:00
Martok
3ceff0d994
Issue #2142 - Optimize .initializers scoping and emitter
...
* Refactor code for emitting the .initializers array into ClassEmitter
* Only emit .initializers scope when actually required
* Remove unfinished code to handle non-present class field initialisers
* Use predicate count_if and any_of of ListNode
* Remove unnecessary parameters for class field parsing
Based-on: m-c 1553744, 1555979, 1555037/1, 1535804/{1-5}
2023-05-01 17:16:20 +02:00
Martok
fc82386ef5
Issue #2142 - Set anonymous function name in field initializer
...
This was done wildly different in m-c 1552875, in the interest of keeping
|setOrEmitSetFunName| around it is implemented differently here.
2023-05-01 17:16:20 +02:00
Martok
2c06165a59
Issue #2142 - Don't treat PNK_NAME specially emitAssignmentOrInit
...
If there ever was a point where this structure "avoids duplication", at least since the
*OpEmitter refactor emitting PNK_NAME differently makes it actually harder to follow.
Mozilla makes the same change at a different time.
2023-05-01 17:16:19 +02:00
Martok
445fd61891
Issue #2142 - Emit field keys in correct order
...
Based-on: m-c 1552229
2023-05-01 17:16:19 +02:00
Martok
c1681ef614
Issue #2142 - Pass through arguments in synthesized constructors for derived classes
...
Based-on: m-c 1552022
2023-05-01 17:16:19 +02:00
Martok
7521dd33e7
Issue #2142 - Fix several scoping issues in field initializers
...
Based-on: m-c 1540789, 1547130, 1547467
2023-05-01 17:16:19 +02:00
Martok
98853c14d7
Issue #2142 - Restrict contents of direct eval in fields
...
Based-on: m-c 1542406
2023-05-01 17:16:18 +02:00
Martok
e708a68921
Issue #2142 - Use JSOP_INITPROP for field initializers
...
We don't want to call setters for field initialization.
Based-on: m-c 1535471, 1547035
2023-05-01 17:16:18 +02:00
Martok
b35fadd54c
Issue #2142 - Implement ASI for fields
...
Based-on: m-c 1529772/{3,4}
2023-05-01 17:16:18 +02:00
Martok
0d3a394cad
Issue #2142 - Factor out PropertyName parsing from Parser::propertyName()
...
Based-on: m-c 1529772/{1,2}
2023-05-01 17:16:18 +02:00
Martok
f7935ec5b2
Issue #2142 - Handle fields in derived classes
...
* Don't name field initializer lambdas
Based-on: m-c 1534721, 1551454, 1542448
2023-05-01 17:16:18 +02:00
Martok
b72b80ed58
Issue #2142 - Add FunctionEmitter, FunctionScriptEmitter, and FunctionParamsEmitter with current methods
...
Based-on: m-c 1473796/3, 1473796/4
2023-05-01 17:16:17 +02:00
Martok
a3584bd6b9
Issue #2142 - Add PropertyEmitter, ObjectEmitter, ClassEmitter, LexicalScopeEmitter, DefaultEmitter
...
Based-on: m-c 1501577, 1521696, 1501578, 1473796/1
2023-05-01 17:16:17 +02:00
Martok
559bacdb66
Issue #2142 - Improve TokenPos handling in BCE
...
* Don't print bogus error locations on BCE internal errors
* Do not use TokenPos in BytecodeEmitter::{setFunctionBodyEndPos,setScriptStartOffsetIfUnset}
Based-on: m-c 1451826/1, 1530034, 1473796/2
2023-05-01 17:16:17 +02:00
Martok
3cbe292dc6
Issue #2142 - Implement syntax for public/private fields and computed field names
...
This state still has the initializers scoped on .initializers local variable, which will be changed later.
Based-on: m-c 1499448, 1530084, 1530832, 1529448 (partial), 1532921, 1528039, 1528038, 1535166, 1550628,
1535166, 1550628, 1541641, 1547133, 1540787, 1535804/9
2023-05-01 17:16:17 +02:00
Moonchild
741ecee75a
Merge pull request 'Implement Element.replaceChildren' ( #2226 ) from FranklinDM/UXP-contrib:work_js-element-replacechildren into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2226
2023-05-01 14:17:52 +00:00
FranklinDM
eb4d4475b0
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-01 21:05:38 +08:00
Martok
7647230e93
Issue #2142 - Add internal option for fields, but always true
...
This allows us to perform bisects on the following commits without causing runtime issues.
Based-on: m-c 1529758
2023-04-30 22:00:06 +02:00
Martok
6b36e0f3c0
Issue #2142 - Reduce calls to FindReservedWord when checking for forbidden identifiers during parsing
...
Based-on: m-c 1351913/{1,2}
2023-04-30 22:00:06 +02:00
Moonchild
ed041c19c5
Merge pull request 'Replace deprecated Harfbuzz functions with current ones.' ( #2223 ) from jobbautista9/UXP:1862-harfbuzz-deprecated-methods into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2223
2023-04-30 19:44:13 +00:00
Moonchild
40f2e813d4
Merge pull request 'Use link-time optimization for Spidermonkey in Windows by default, and fix a deprot in js/src' ( #2222 ) from jobbautista9/UXP:ltcg-js into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2222
2023-04-30 19:40:46 +00:00
Moonchild
3ff018f32f
Merge pull request 'Collected small changes' ( #2214 ) from martok/UXP-contrib:mr/collect-1 into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2214
2023-04-30 19:36:28 +00:00
Martok
6ab2fe9a69
Issue #2142 - Ensure 'await' is always a restricted identifier when parsing modules
...
Based-on: m-c 1356189
2023-04-30 20:56:24 +02:00
Martok
750a32d64d
Issue #2142 - Add predicate functions count_if and any_of to ListNode iterator
2023-04-30 20:56:23 +02:00
Martok
d4be309498
Issue #2142 - Change InitPropertyOperation to accept a PropertyName directy and use DefineDataProperty
...
Based-on: m-c 1413907, 1547129
2023-04-30 20:56:23 +02:00
Martok
196d6a6931
Issue #2142 - Extend newSuperCall for JSOP_SPREADSUPERCALL
...
Based-on: m-c 1537936
2023-04-30 20:56:23 +02:00
Martok
a356af699f
Issue #2142 - Fold BytecodeEmitter::checkTypeSet into BytecodeEmitter::emitCheck
...
The bytecode emitter used to call checkTypeSet for each JOF_TYPESET op. Despite
correctness asserts in the TypeScript code, this was pretty error prone.
The solution is to move this check to BytecodeEmitter::emitCheck (called for
each opcode we emit), so we don't have to worry about this anymore.
Based-on: m-c 1521491/3
2023-04-30 20:56:22 +02:00
Martok
eebbd8cb00
Issue #1691 - Follow-up: use error message with no arguments for bad import statements
2023-04-30 20:55:40 +02:00
Job Bautista
4a2aae060f
Issue #1862 - Follow-up: Replace deprecated Harfbuzz functions with current ones.
...
Based on Mozilla bug 1500356.
2023-04-30 21:20:06 +08:00
Job Bautista
9baae9a47e
Issue #1691 - Follow-up: Fix CallSelfHostedFunction deprot introduced by Part 4.
2023-04-30 21:11:01 +08:00
Job Bautista
42e0b5db07
Issue #2221 - Enable link-time optimization for Spidermonkey by default if building it shared.
...
Currently only Windows can take advantage of this.
The reason why the arrays of deunified sources are named like that in
Spidermonkey's moz.build is to avoid UnsortedErrors in python. There's probably
a better way to handle that, but I just want something that works for now.
And yes, the deunified sources will be reunified if LTO is disabled.
2023-04-30 21:10:44 +08:00
Martok
311482507b
Issue #1285 - Follow-up: Correctly handle follow-up compilations of RegExp with named capturing groups
2023-04-30 13:26:26 +02:00
Martok
9f246c4c74
Issue #1894 - Follow-up: Fix return value ordering in IonMonkey nullish coalescing
2023-04-30 13:26:26 +02:00
Martok
06222816f7
Issue #2173 - Follow-up: Use common ancestor of PNK_(OPT)DOT in ASTSerializer::expression
2023-04-30 13:26:26 +02:00
Martok
c11d3892a5
Issue #2213 - Follow-up: Fix derieved Generator prototypes after previous change
2023-04-30 13:26:25 +02:00
Moonchild
4d4d8cfc9f
Merge pull request 'Bug 1432272 - Make Fetch API use the global's base URL instead of the entry document's base URL' ( #2217 ) from FranklinDM/UXP-contrib:work_js-bz-1432272 into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2217
2023-04-30 10:55:21 +00:00
Moonchild
ff537f4ffd
Merge pull request 'Split hunspell library out of xul.' ( #2212 ) from jobbautista9/UXP:shared-hunspell-nojs into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2212
2023-04-30 10:54:22 +00:00
Moonchild
78156cd0ca
Merge pull request 'Follow-up: Use internal Move instead of std::move for consistency in SurfaceCache' ( #2220 ) from FranklinDM/UXP-contrib:work_image-followup-move into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2220
2023-04-30 10:51:48 +00:00
Moonchild
732e1bb7f7
Merge pull request 'Implement Dynamic Module Import and its various dependencies.' ( #2215 ) from dbsoft/UXP:d-m-i into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2215
2023-04-30 10:51:26 +00:00
Moonchild
22e68f166c
Merge pull request 'Free ImageSurfaceCache outside of the SurfaceCache mutex lock' ( #2219 ) from FranklinDM/UXP-contrib:work_image-free-imagesurfacecache-outside-lock into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2219
2023-04-30 10:51:00 +00:00
FranklinDM
e821844e24
Issue #2073 - Follow-up: Use internal Move instead of std::move for consistency
2023-04-30 18:21:06 +08:00
FranklinDM
7251ed27ff
Issue #2218 - Part 2: Make SurfaceCache free ImageSurfaceCache objects outside of the lock
...
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1389479
2023-04-30 18:17:29 +08:00
FranklinDM
608f037816
Issue #2218 - Part 1: Add nsExpirationTracker::NotifyEndTransaction(Locked) callbacks for subclasses to know when an aging iteration is complete
...
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1389479
2023-04-30 18:17:24 +08:00
Moonchild
1978ebd3b8
Merge pull request '[MailNews] Fix build bustage due to recent MIME API changes' ( #2216 ) from FranklinDM/UXP-contrib:work_mail-fix-mime-api-bustage into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2216
2023-04-28 16:54:12 +00:00
FranklinDM
80a323d747
Bug 1432272 - Make Fetch API use the global's base URL instead of the entry document's base URL
2023-04-28 20:52:48 +08:00
FranklinDM
479561661e
No issue - [MailNews] Fix build bustage due to recent MIME API changes
2023-04-28 20:23:29 +08:00
Brian Smith
f7ee58a9e7
Issue #1691 - Part 16: Dynamically imported modules can throw any value as an exception.
...
https://bugzilla.mozilla.org/show_bug.cgi?id=1508672
(cherry picked from commit 910a37b53f1826a863cc3ab6eb61fc369f4505a0)
2023-04-27 13:35:48 -05:00
Brian Smith
32029813bb
Issue #1691 - Part 15: Make |new import()| a syntax error.
...
https://bugzilla.mozilla.org/show_bug.cgi?id=1508672
(cherry picked from commit 45fda91268b6a3ca8471c8094f2d640ebad682f9)
2023-04-27 13:35:40 -05:00
Brian Smith
623b0dc624
Issue #1691 - Part 14: Fix a debug assert and memory leak.
...
PNK_IMPORT_META and PNK_CALL_IMPORT are binary nodes... They function similar
to list nodes, so they worked there, but debug mode asserts because of the wrong type.
https://bugzilla.mozilla.org/show_bug.cgi?id=1342012
Fixed a memory leak due to missing code in SourceScriptObject::finalize(). Thanks FranklinDM!
(cherry picked from commit 15e81193c692c2c2aec665e7e5a88d98a9b85eca)
2023-04-27 13:35:34 -05:00
Brian Smith
b1ed742b2f
Issue #1691 - Part 13: Remove MUST_MATCH_TOKEN* macros in Parser.
...
https://bugzilla.mozilla.org/show_bug.cgi?id=1501928
This was helpful in debugging one of the crashes, the macros made debugging a nightmare.
(cherry picked from commit 7bceec3f7dff086305c3f50939a8c830ca7f107b)
2023-04-27 13:35:28 -05:00
Brian Smith
1adf442e92
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-27 13:35:21 -05:00
Brian Smith
7b42bc809d
Issue #1691 - Part 11: Fix incorrect reference counting in ModuleScript class.
...
(cherry picked from commit 4ef1fa98c9518f5c107424667229ddb6f9f97767)
2023-04-27 13:35:14 -05:00
Brian Smith
22d254b479
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-27 13:35:07 -05:00
Brian Smith
30a6828f47
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-27 13:35:01 -05:00
Brian Smith
914299b8ba
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-27 13:34:55 -05:00
Brian Smith
e29f4488b1
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-27 13:34:48 -05:00
Brian Smith
8431e52405
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-27 13:34:41 -05:00
Brian Smith
3a59f91dee
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-27 13:34:33 -05:00
Brian Smith
b84f08cf54
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-27 13:34:27 -05:00
Brian Smith
1ddeac519b
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-27 13:34:20 -05:00
Brian Smith
9fa3fc6315
Issue #1691 - Part 7a: Add a JS API to get the private value for the calling script or module.
...
https://bugzilla.mozilla.org/show_bug.cgi?id=1342012
(cherry picked from commit e89e50d5047468e0bb02ee82f9cd0be282b24a1b)
2023-04-27 13:34:14 -05:00
Brian Smith
c961285752
Issue #1691 - Part 6e: Fix problems due to divergent codebases. This gets basic dynamic import working.
...
Fix a problem in Part 5b where Mozilla used toGCThing() and we don't.
Fix a problem in Part 4 where runtime() returns nullptr in our codebase since it runs on JS Helper thread.
We need to get the runtime via runtimeFromAnyThread() instead.
(cherry picked from commit dddb46225bbd1adff11f635e32934aee36923e47)
2023-04-27 13:34:05 -05:00
Brian Smith
a28f3edf2a
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-27 13:33:56 -05:00
Brian Smith
6b69dad2aa
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-27 13:33:47 -05:00
Brian Smith
e4c920f397
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-27 13:33:36 -05:00
Brian Smith
5f63601f0f
Issue #1691 - Part 6a: Support private values which contain pointers to cycle-collected C++ objects
...
https://bugzilla.mozilla.org/show_bug.cgi?id=1342012
(cherry picked from commit 1286cca73d58332ba0becd0011f747713b8acfac)
2023-04-27 13:33:27 -05:00
Brian Smith
1a4146cead
Issue #1691 - Part 5b: Stop modules from entraining the top-level JSScript.
...
https://bugzilla.mozilla.org/show_bug.cgi?id=1489477
(cherry picked from commit 6ce0af856186e65fb4987daf4e06dc68fb3f7483)
2023-04-27 13:33:17 -05:00
Brian Smith
fdfe9a8ad2
Issue #1691 - Part 5: Don't pre-create module metadata object when compiling.
...
https://bugzilla.mozilla.org/show_bug.cgi?id=1489477
(cherry picked from commit d83bad49f6b03894548fbf85fc18ad7e8cc19a93)
2023-04-27 13:33:10 -05:00
Brian Smith
130d9f4d91
Issue #1691 - Part 4: Finish implementing call import.
...
https://bugzilla.mozilla.org/show_bug.cgi?id=1499140
(cherry picked from commit 7bf7d64887944b127a72090dd62eb57f67c5089d)
2023-04-27 13:33:00 -05:00
Brian Smith
6eecfad57c
Issue #1691 - Part 3: Finish implementing import meta.
...
https://bugzilla.mozilla.org/show_bug.cgi?id=1427610
(cherry picked from commit a8625238ac846fb7eb103646ddb8634a5860f067)
2023-04-27 13:32:52 -05:00
Brian Smith
12291f8248
Issue #1691 - Part 2: Implement call import and import meta in the parser.
...
https://bugzilla.mozilla.org/show_bug.cgi?id=1427610
https://bugzilla.mozilla.org/show_bug.cgi?id=1484948
(cherry picked from commit 6be083187f49e444de1bb116bb5930b20125190b)
2023-04-27 13:32:43 -05:00
Brian Smith
7223fb518d
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-27 13:28:56 -05:00
Job Bautista
ff9c52f223
Issue #1451 - Fix hunspell build bustage in FreeBSD.
...
Thanks to dbsoft for this patch!
2023-04-26 17:46:36 +08:00
Moonchild
ba04f314c0
Merge pull request 'Place Skia back into gkmedias.' ( #2211 ) from jobbautista9/UXP:61-skia-gkmedias into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2211
2023-04-25 15:07:35 +00:00
Moonchild
dae88dede5
Merge pull request 'Correct handling of async (arrow) functions declared inside constructors' ( #2213 ) from martok/UXP-contrib:mr/nested-async-assert into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2213
2023-04-25 15:06:18 +00:00
Martok
dd512188ed
No issue - Correct handling of async (arrow) functions declared inside constructors
...
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1462353 , but since we still support
legacy generators, this only corrects the handling and leaves the newTarget plumbing
intact.
2023-04-23 23:02:00 +02:00
Job Bautista
a12787e985
Issue #1451 - Split hunspell library out of xul.
...
utf_info.cxx imported from 1.4.1 upstream.
Also moved unicode_info struct to the header to fix bustage with compiling the
new utf_info.cxx.
I've also gone ahead and deunified this new shared library as unified building
is busting in hunspell.cxx, complaining about config.h not being found. Weird
that it only happens in unified mode.
This reduces libxul size on all platforms by ~200 KB.
2023-04-23 13:51:11 +08:00
Job Bautista
41944ab728
Issue #61 - Follow-up: Fix xul.dll link bustage related to Skia.
2023-04-20 20:05:39 +08:00
Job Bautista
acb5f39d42
Issue #61 - Follow-up: Fix gkmedias.dll link bustage related to Skia.
...
I don't understand why SK_API is being a problem, but it seems they are.
2023-04-20 20:05:39 +08:00
Job Bautista
a6f9c5fe3e
Revert "Issue #61 - Place Skia in libxul"
...
This reverts commit 39cebe99e2 .
2023-04-20 20:05:39 +08:00
Moonchild
e2acdfd18d
[No issue] Remove unmaintained WebGL conformance test suite.
2023-04-20 00:51:12 +02:00
Moonchild
54e3e60796
Revert "[devtools] Don't allow sourcemap URLs to redirect"
...
This reverts commit 2a05494abe .
2023-04-17 10:25:45 +02:00
Moonchild
eb5c408991
Issue #2053 - Follow-up: Clear the performance entries buffer if full.
...
Also enlarged the buffer to 16k entries which should be enough for all
legitimate use of performance measurements (and then some).
This throws a quota exceeded error if sites want to record more entries
into the buffer and just clears it (similar to Moz's behaviour under
memory pressure) ready for fresh entries to be added again.
2023-04-13 17:22:41 +02:00
Moonchild
2a05494abe
[devtools] Don't allow sourcemap URLs to redirect
2023-04-13 10:54:34 +02:00
Moonchild
bc89e58def
[network] Improve checks while parsing MIME parameters.
2023-04-13 10:54:27 +02:00
Moonchild
3a009b97f6
Issue #1911 - Follow-up: Filter out illegal characters in more locations.
2023-04-13 10:54:10 +02:00
Moonchild
a105f6d5e9
No issue - Fix off-by-one of kLargeDatasetSize
2023-04-13 10:54:02 +02:00
Sandra
5db241c0c0
Increase size of data over which we write the data to disk rather than keep it around in memory
2023-04-13 10:53:53 +02:00
Sandra
d38dca10e5
Use nsAnonymousTemporaryFile for clipboard cache
...
Base on https://github.com/mozilla/gecko-dev/commit/ecc04a9245b409d7eed7df63ba733cd2073180de
2023-04-13 10:53:14 +02:00
Moonchild
69868a9ad6
[devtools] Don't allow sourcemap URLs to redirect
2023-04-12 17:28:19 +02:00
Moonchild
3a6949f398
[network] Improve checks while parsing MIME parameters.
2023-04-12 16:41:04 +02:00
Moonchild
dfa402aa98
Issue #1911 - Follow-up: Filter out illegal characters in more locations.
2023-04-12 15:08:37 +02:00
Moonchild
c74cecc05c
No issue - Fix off-by-one of kLargeDatasetSize
2023-04-12 12:08:35 +02:00
Moonchild
0ba7d1e988
Merge pull request 'Use nsAnonymousTemporaryFile for clipboard cache' ( #2209 ) from _Sandra_/UXP:master into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2209
2023-04-12 10:03:14 +00:00
Sandra
9f22c3a7b9
Increase size of data over which we write the data to disk rather than keep it around in memory
2023-04-12 07:12:24 +03:00
Moonchild
c2211e7ddc
Issue #2053 - Follow-up: Re-enable navigation timing now it's to-spec.
...
Verified fixed with Google website translation.
2023-04-11 23:55:32 +02:00
Moonchild
2f258b259f
Issue #2053 - Follow-up: Make the default ResourceTimingBufferSize larger
...
Contrary to setting no limit by default, we're giving it a reasonable
default size to prevent runaway memory usage when websites just keep
recording ad infinitum.
2023-04-11 23:38:10 +02:00
Moonchild
c95e970df5
Merge pull request 'Update Performance API to User Timing L3' ( #2208 ) from FranklinDM/UXP-contrib:work_js-user-timing-l3 into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2208
2023-04-11 21:32:22 +00:00
_Sandra_
558c26bbbf
Merge pull request 'work_js-user-timing-l3' ( #1 ) from FranklinDM/UXP-contrib:work_js-user-timing-l3 into master
...
Reviewed-on: https://repo.palemoon.org/_Sandra_/UXP/pulls/1
2023-04-11 16:16:48 +00:00
Sandra
1efbe485bb
Use nsAnonymousTemporaryFile for clipboard cache
...
Base on https://github.com/mozilla/gecko-dev/commit/ecc04a9245b409d7eed7df63ba733cd2073180de
2023-04-11 11:58:51 +03:00
FranklinDM
9e976ddf7f
Issue #2053 - Part 5: Throw a DOMException instead of a JS exception for some errors
2023-04-10 18:22:55 +08:00
FranklinDM
ac1fd1133c
Issue #2053 - Part 4b: Fix measure name to timestamp conversion
...
Partially based on https://bugzilla.mozilla.org/show_bug.cgi?id=1772417
2023-04-10 18:22:54 +08:00
FranklinDM
65203af3dc
Issue #2053 - Part 4a: Align IsPerformanceTimingAttribute to user-timing spec
...
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1772417
2023-04-10 18:22:54 +08:00
FranklinDM
19a7544fdf
Issue #2053 - Part 3: Update PerformanceMark to User Timing L3
...
There are a few minor differences between this and Mozilla's implementation:
(a) The type error messages were not hardcoded to the Performance class and were moved to Errors.msg or domerr.msg instead.
(b) Resist fingerprinting-pref changes were skipped.
Partially based on https://bugzilla.mozilla.org/show_bug.cgi?id=1724645
2023-04-10 18:22:53 +08:00
FranklinDM
d4138780ee
Issue #2053 - Part 2: Update PerformanceMeasure to User Timing L3
...
There are a few minor differences between this and Mozilla's implementation:
(a) The type error messages were not hardcoded to the Performance class and were moved to Errors.msg instead.
(b) PerformanceMeasureOptions is used directly and doesn't use the the Maybe<> container class. I haven't found the reason yet, but PerformanceMeasureOptions is disallowed from having a copy constructor and without that, it isn't possible to use it with Maybe<>... There doesn't seem to be any problem with using it directly, though.
(c) Resist fingerprinting-pref changes were skipped.
Partially based on https://bugzilla.mozilla.org/show_bug.cgi?id=1762482
2023-04-10 18:22:53 +08:00
FranklinDM
5fc711ba17
Issue #2053 - Part 1: Performance should be an EventTarget
...
Some sites (e.g. Bitbucket) are now calling `performance.addEventListener` and expect that Performance is an EventTarget.
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1432522
2023-04-10 18:22:46 +08:00
Moonchild
ff29aa37a8
Merge pull request 'Add support for libavcodec 60/FFmpeg 6.0' ( #2204 ) from trav90/UXP-contrib:ffmpeg60 into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2204
2023-04-09 13:47:20 +00:00
Moonchild
bfeb62ceec
Merge pull request 'Implement self.structuredClone()' ( #2206 ) from FranklinDM/UXP-contrib:work_js-structuredclone into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2206
2023-04-09 13:44:46 +00:00
Moonchild
b62bf0c4b7
Merge pull request 'Implement window.event' ( #2207 ) from FranklinDM/UXP-contrib:work_js-window-event into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2207
2023-04-09 13:38:38 +00:00
FranklinDM
78e4526d55
Issue #595 - Implement window.event
...
This MSIE extension is still technically part of the standard*, although its use is discouraged. This API will also likely never go away based on some comments at this issue on MDN content**.
Note that this uses a different approach for getting the inner window.
* https://dom.spec.whatwg.org/#interface-window-extensions
** https://github.com/mdn/content/issues/21848
Spec PR: https://github.com/whatwg/dom/pull/407
Spec discussion: https://github.com/whatwg/dom/issues/334
Partially based on https://bugzilla.mozilla.org/show_bug.cgi?id=218415
2023-04-08 00:20:48 +00:00
FranklinDM
ae19a0513e
Issue #2197 - Follow-up: Remove GC debug assertion on sandbox
...
There's no way to access GC from here.
2023-04-08 08:16:11 +08:00
FranklinDM
c660c6f699
Issue #2197 - Part 4: Expose structuredClone in Sandbox
...
Partially based on https://bugzilla.mozilla.org/show_bug.cgi?id=1734320
2023-04-07 23:41:57 +08:00
FranklinDM
84af6181e7
Issue #2197 - Part 3: Implement self.structuredClone()
...
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1722576
2023-04-07 23:41:56 +08:00
FranklinDM
6d2e5850ce
Issue #2197 - Part 2d: Implement PostMessageOptions for Window
...
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1502802
2023-04-07 23:41:56 +08:00
FranklinDM
b3a6a8f274
Issue #2197 - Part 2c: Implement StructuredSerializeOptions for ServiceWorker
...
Partially based on https://bugzilla.mozilla.org/show_bug.cgi?id=1502802
2023-04-07 23:41:55 +08:00
FranklinDM
83501c86d2
Issue #2197 - Part 2b: Implement StructuredSerializeOptions for Worker
...
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1502802
2023-04-07 23:41:55 +08:00
FranklinDM
5c8599d223
Issue #2197 - Part 2a: Implement StructuredSerializeOptions for MessagePort
...
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1502802
2023-04-07 23:41:54 +08:00
FranklinDM
0206e87a2e
Issue #2197 - Part 1b: Transferables should be arrays of objects
...
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1336020
2023-04-07 23:41:54 +08:00
FranklinDM
253c711a92
Issue #2197 - Part 1a: postMessages should have transferable as [] by default
...
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1336020
2023-04-07 23:41:48 +08:00
Moonchild
c01fd8ec19
Merge pull request 'Move getElementsByName from HTMLDocument to nsIDocument' ( #2201 ) from FranklinDM/UXP-contrib:work_dom-move-getelementsbyname-to-document into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2201
2023-04-07 15:41:23 +00:00
Moonchild
a9c9fc184a
Merge pull request 'No issue - Use inet_ntop() for converting IPv4 network addresses instead of the deprecated inet_ntoa()' ( #2202 ) from FranklinDM/UXP-contrib:work_network-replace-deprecated-intet-ntoa into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2202
2023-04-07 15:38:34 +00:00
FranklinDM
e35a3f19c7
Issue #252 - Follow-up: Include a null check against mDocument
2023-04-07 23:24:03 +08:00
trav90
717f059d1b
Issue #2199 - Add support for libavcodec 60/FFmpeg 6.0
2023-04-07 09:59:19 -05:00
Moonchild
dcdbf5d1da
Merge pull request 'Follow-up: Silence compiler warnings for libjxl (MSVC)' ( #2200 ) from FranklinDM/UXP-contrib:work_media-silence-jxl-msvc into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2200
2023-04-07 14:58:41 +00:00
Moonchild
4f166f3ddb
Merge pull request 'Merge dom.getRootNode.enabled pref into dom.webcomponents.enabled.' ( #2198 ) from jobbautista9/UXP:1361-rootnode-merge into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2198
2023-04-07 14:57:55 +00:00
FranklinDM
4cc241fb63
No issue - Use inet_ntop() for converting IPv4 network addresses instead of the deprecated inet_ntoa()
...
The original implementation opted to silence the warnings instead and use the deprecated inet_ntoa() as a Windows XP consideration (bug 1240932). Since we've removed support for that platform, it makes sense to use the modern inet_ntop() API instead.
2023-04-07 22:20:38 +08:00
FranklinDM
c2b9a9e005
Issue #252 - Move getElementsByName from HTMLDocument to Document
...
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1415176
2023-04-07 22:08:20 +08:00
FranklinDM
80bd22fc35
Issue #2061 - Follow-up: Silence compiler warnings for libjxl (MSVC)
2023-04-07 21:59:19 +08:00
Job Bautista
8f602a52ee
Issue #1361 - Follow-up: Merge dom.getRootNode.enabled pref into dom.webcomponents.enabled.
2023-04-07 20:16:46 +08:00
Moonchild
8e2788496d
Merge pull request 'Update in-tree harfbuzz to 7.1.0, remove old fontconfig support on GTK systems, and cache ScaledFonts in gfxFont::GetScaledFont' ( #2196 ) from jobbautista9/UXP:2191-cache-scaledfonts into master
...
Reviewed-on: https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2196
2023-04-06 22:20:55 +00:00
Job Bautista
7fe1f000c7
Issue #2191 - Follow-up: Add missing mozilla::gfx in gfxFcPlatformFontList.cpp
...
Fixes build bustage in GNU/Linux
2023-04-05 21:22:18 +08:00
Job Bautista
5e50b32a3c
Issue #2191 - Remove virtual from gfxFont::GetCairoScaledFont.
...
Backported from Mozilla bug 1385029.
2023-04-05 21:22:18 +08:00
Job Bautista
82bce1935f
Issue #2191 - Require implementation of gfxFont::GetScaledFont and remove unnecessary gfxPlatform::GetScaledFontForFont.
...
Backported from Mozilla bug 1385029.
2023-04-05 21:22:18 +08:00
Job Bautista
c85b510dbb
Issue #2191 - Remove redundant CairoScaledFont accessor from gfxFont subclasses.
...
Backported from Mozilla bug 1385029.
2023-04-05 21:22:18 +08:00
Job Bautista
4af61863f3
Issue #2191 - Get rid of gfxFontconfigUtils.h since gfxFontconfigFontBase is unnecessary.
...
Backported from Mozilla bug 1385029.
2023-04-05 21:22:17 +08:00
Job Bautista
b494419e91
Issue #2191 - Make ScaledFont::SetCairoScaledFont virtual so it can be accessed from outside Moz2D.
...
Backported from Mozilla bug 1385029.
2023-04-05 21:22:17 +08:00
Job Bautista
57ef40f783
Issue #2191 - Remove as much old fontconfig support as needed for Harfbuzz 7.1.0 update.
...
Based on Mozilla bugs 1119128, 1285533, and 1421964.
gfx.font_rendering.fontconfig.fontlist.enabled is no longer available.
gfxFontconfigUtils.h still exists, and will be removed in another commit. Just
need more research on bug 1385029.
Tag #1862
2023-04-05 21:22:17 +08:00
Job Bautista
3122de9547
Issue #1862 - Part 2: Update harfbuzz's build system for 7.1.0.
...
Harfbuzz upstream seems to have fixed all conflicts originally encountered
before 2.6.0, so let's unify all harfbuzz's sources.
Some parts of README-mozilla (now README-mcp) no longer apply, so update that as
well.
2023-04-05 21:22:17 +08:00
Job Bautista
b137a3cff3
Issue #1862 - Part 1: Update harfbuzz source to 7.1.0.
2023-04-05 21:22:16 +08:00
Moonchild
54fc723126
Issue #2180 - Follow-up: Move sentinel check up a bit.
2023-04-02 15:39:05 +02:00
Moonchild
9b8ca17ee4
Issue #2180 - Add pref to control NSS TLS 1.3 protocol downgrade sentinel
2023-04-02 15:38:57 +02:00
Moonchild
cddc95b39b
Issue #2176 - Don't reconstruct the parent when tearing down
...
display:contents nodes with pseudo-elements.
We need to use StyleChildrenIterator which iterates over them, instead.
This is a bit of a hack but we can't always have our cake.
We need to be a bit careful though, since ::before and ::after are owned
by their own frame, and thus could be unbound from the tree or even dead
after removing the frame.
This basically ports bugs 1435566 and 1438467
2023-04-02 15:38:31 +02:00
Moonchild
5676529793
Issue #2171 - Skip over shadow nodes that don't have an owning node.
...
Resolves #2171
2023-04-02 15:37:44 +02:00
Moonchild
ce68156cf4
Revert "[widget] Linux GTK3: Detach accessible from moz_container before it's deleted"
...
This reverts commit 465a18f342 .
Resolves #2168
2023-03-18 19:57:56 +01:00
Moonchild
5032ad9593
Issue #2117 - Follow-up: Run precomplete cmd during package staging
...
We rely on this for all OSes except Mac where precomplete should not
be in the root (it uses Mozilla's fallback packaging that places it in
$RESPATH)
2023-03-17 22:11:30 +01:00
Moonchild
b55f765f2e
Issue #1911 - Follow-up: Filter out illegal file extensions also.
...
We already did this for file names, just not extensions.
2023-03-17 12:02:55 +01:00
Moonchild
856078d435
[widget] Linux GTK3: Detach accessible from moz_container before it's deleted
2023-03-17 12:02:46 +01:00
Moonchild
c74c262d2f
[GFX] Add some sanity checks and clamps to SurfaceData calculations.
2023-03-17 12:02:38 +01:00
Moonchild
787e29e374
No Issue - Ensure more OsiSpace
...
ensureOsiSpace(); was very much under-used. This adds more instances
where it makes sense to ensure Osi space before placing masm calls.
2023-03-17 12:02:31 +01:00
FranklinDM
e439896c9b
Issue #2148 - Shrink Vector from (usually) four pointers in size to three
...
when no inline storage is used.
See Bug 1338374
2023-03-17 12:02:20 +01:00
FranklinDM
15b508f1fb
Issue #2148 - Make Vector not use AlignedStorage for its inline element storage
...
See Bug 1338374 1/2
2023-03-17 12:02:12 +01:00
Job Bautista
5651ebfc76
Issue #2148 - Discard RegExpShared data tables when discarding regexp JIT code.
...
Based on Mozilla bug 1378736's part 2.
Should fix the double-free.
Follow-up for #2083
2023-03-17 12:02:04 +01:00
Job Bautista
593bfc1ce8
Issue #2148 - Don't null out RegExpObject -> RegExpShared pointer on GC.
...
Follow-up for issue #2083 .
Taken from Mozilla bug 1378736.
2023-03-17 12:01:50 +01:00
Brian Smith
28953cda7a
Issue #2160 - Initial support for notarizing during DMG package.
...
Added --with-macbundle-idenity configure option to set a codesign identity.
If no identity is set or cross-compiling from Linux no codesigning will be
done. Currently doing a full deep bundle v2 sign, instead of limited v1.
2023-03-15 15:10:52 +01:00
Moonchild
516f3f545d
Merge branch 'master' into release
...
# Conflicts:
# CLOBBER
# js/src/vm/RegExpObject.cpp
# security/nss/lib/nss/nss.h
# security/nss/lib/pkcs12/p12d.c
# security/nss/lib/softoken/softkver.h
# security/nss/lib/util/nssutil.h
2023-03-13 13:11:20 +01:00
Moonchild
83aff65a42
Force clobber
2023-02-19 17:53:31 +01:00
Moonchild
5bd97df957
[NSS] Update NSS to 3.52.9 to pick up fixes.
2023-02-19 17:51:26 +01:00
Moonchild
8772711181
[DOM] Check whether module load request was already cancelled when a load fails
2023-02-19 17:51:18 +01:00
Moonchild
dc9526f4c6
[widget] Properly test for and handle errors in target-surface creation
...
and mapping.
2023-02-19 17:51:10 +01:00
Moonchild
9ab36e7ae0
Issue #2103 - Fix typo in RegExp Parser
...
This corrects the typo where the left-hand character would determine if
the right-hand character would be added or not.
Resolves #2103
2023-02-02 10:50:47 +01:00
Job Bautista
e8d30841e7
Issue #2091 - Parse \p{Extended_Pictographic} too.
...
This is essentially a follow up to Issue #1286 . We already have
UCHAR_EXTENDED_PICTOGRAPHIC in our in-tree ICU, so there's no reason to comment
this case out.
2023-01-27 05:01:53 +01:00
Martok
9faf29374e
Issue #2093 - Trace HeapPtr<RegExpShared::groupsTemplate_> for GC move/compact events, regression from #2072
2023-01-26 20:11:28 +01:00
Moonchild
75e4818d36
Merge branch 'master' into release
2023-01-19 00:42:00 +01:00
Moonchild
a65144e9e0
Fix merge conflicts.
2023-01-13 12:55:52 +01:00
Moonchild
4f29548526
Merge branch 'master' into release
...
# Conflicts:
# image/decoders/nsJXLDecoder.cpp
# js/src/irregexp/NativeRegExpMacroAssembler.cpp
# js/src/irregexp/RegExpAST.h
# js/src/irregexp/RegExpEngine.cpp
# js/src/irregexp/RegExpParser.cpp
# js/src/irregexp/RegExpParser.h
# xpcom/io/nsLocalFileUnix.cpp
2023-01-13 12:11:56 +01:00
Moonchild
528db2cbd8
Issue #1818 - Remove obsolete path hack in widget code.
2022-12-16 09:13:48 +00:00
Moonchild
84e6bcc1e6
[network] Align cookie checks with RFC 6265 (bis)
2022-12-16 09:13:38 +00:00
Moonchild
0dc9ff518d
[libjar] Add some extra sanity checks to our Zip reader.
2022-12-16 09:13:25 +00:00
Moonchild
a2e3bd44aa
[network] move some generic websocket code to the baseclass
2022-12-16 09:13:09 +00:00
Moonchild
163a0e7caf
Revert "Issue #1279 - Implement regular expressions lookbehind (v2)"
...
This reverts commit d10e8a5b06 .
2022-12-15 09:11:02 +00:00
Moonchild
49a86db5f3
Issue #2040 - Pre-multiply the alpha values in our JXL decode buffer. (uplift)
...
Using selective calculation (only if not opaque) and fast integer
math here should optimize well in compilers.
2022-12-15 09:09:19 +00:00
Moonchild
2640953d8b
Issue #2019 - Follow-up: Make nsPluginInstanceOwner also listen to keypress events in the system event group.
...
nsPluginInstanceOwner only listens to keypress events in the default event group.
However, in our changed operating mode, keypress events are not fired in the
default event group if the key does not result in something printable.
This means that nsPluginInstanceOwner should also listen to keypress events
in the system event group and should handle each keypress that way, but
only once. I.e., if a printable keypress event is received in the system event
group, it should be ignored, since it would've already been handled in the
default event group in that case.
2022-11-26 18:18:09 +00:00
Moonchild
7eb7d67f7a
Issue #2033 - Temporary fix of R<->B channel swap.
...
We have a BGR/RGB channel ordering mismatch here. to at least
provide proper display, a quick&dirty byte swap on the output
buffer will fix this for now, but we should look into seeing where
the surface mismatch is caused.
std::swap() should optimize pretty well in any of the used
compilers, but if necessary, a full buffer ASM routine can be
slotted in (although on current hardware I doubt this will be
even noticeable as it is)
2022-11-26 02:43:18 +00:00
Moonchild
e28860ba7f
Revert "[XPCOM] Deal with lstat potentially lying in nsLocalFileUnix."
...
This reverts commit c127f58ef3 .
2022-11-20 14:14:48 +00:00
Moonchild
49a96b1d91
Merge branch 'master' into release
2022-11-19 20:15:23 +00:00
Moonchild
3130812693
Merge branch 'master' into release
2022-11-12 18:34:07 +00:00
Moonchild
71ae69aea8
[WebGL] Implement webgl.max-size-per-texture-mib
2022-10-26 14:50:05 +00:00
Moonchild
9e34d697c7
[XPCOM] Fix Base64 off-by-one issue and safeguard against this mistake in the future.
2022-10-26 14:49:55 +00:00
Moonchild
8fa9125d02
[No issue] Hold some strong references on nsRefreshDriver
2022-10-26 14:49:46 +00:00
Brian Smith
4b4488c3e4
Issue #2022 - Part 2 - Add Ventura version detection.
...
Also add Monterey and Ventura to the graphics driver blocklist.
2022-10-26 14:49:33 +00:00
Brian Smith
248db7d301
Issue #2022 - Part 1 - Fix transparent windows on MacOS 13 Ventura.
...
During the BaseWindow creation contenView is nil on Ventura...
So create a NSView with the requested dimensions and set is as the contenView.
2022-10-26 14:49:23 +00:00
Moonchild
e199f2949b
[No issue] Ensure LockImpl::Try() returns the correct bool value.
2022-10-26 14:45:39 +00:00
Moonchild
456b5450a4
Issue #2010 - Ensure raw tagnames are safe exiting internalEntityParser
...
This resolves #2010
2022-09-28 13:50:10 +00:00
Moonchild
d8e629c4a3
Merge branch 'master' into release
2022-09-27 20:12:40 +00:00
Moonchild
4898c4f297
Merge branch 'master' into release
2022-09-24 12:16:59 +00:00
Moonchild
7cd578bbc6
Merge branch 'master' into release
2022-09-22 13:16:48 +00:00
Moonchild
1e91df628a
Merge branch 'master' into release
2022-09-22 11:52:16 +00:00
Moonchild
b110549cbd
Merge branch 'master' into release
2022-07-27 06:07:45 +00:00
Moonchild
971047835a
Merge branch 'master' into release
...
# Conflicts:
# config/milestone.txt
# toolkit/mozapps/extensions/internal/XPIProvider.jsm
2022-07-25 20:47:06 +00:00
Moonchild
dd4d9eb032
[XPCOM] Crash safely when TArray replacements are OOB.
...
In the unlikely event of TArray element replacement calls are OOB, crash safely
with a debug breakpoint instead of corrupting memory.
2022-07-03 15:49:44 +00:00
Moonchild
8b94f1e480
[DOM] use the sanitizer to restrict href in svg:use to fragment-only URLs
2022-07-03 15:49:34 +00:00
Moonchild
c89610a5c7
[network] Clear PAC loader when the load failed
2022-07-03 15:49:23 +00:00
Moonchild
217963cbed
Update NSS to 3.52.7
2022-07-03 15:49:14 +00:00
Moonchild
c4f4e18340
[DOM media] Remove potentially unsafe type accesses when debug logging
2022-07-03 15:49:04 +00:00
Moonchild
8a7c0e7345
[network] Clean up and update the list of external protocol handlers.
2022-07-03 15:48:54 +00:00
Moonchild
52e304d450
Issue #1053 - Follow-up: Correct conditional define on POSIX systems. (uplift)
...
This conditional was incorrectly changed when removing Android support.
This potentially causes issues on Linux systems by not using pthreads correctly,
which may lead to high idle CPU usage.
2022-06-28 13:28:20 +00:00
Moonchild
cfc0eeca53
Revert "Issue #1909 - Guard against empty update manifest URL"
...
This reverts commit d7fadcdef9 .
2022-06-07 11:59:07 +00:00
Moonchild
ebd3dd9228
Merge branch 'master' into release
2022-06-03 21:50:44 +00:00
Moonchild
cb40e4e7ef
Merge branch 'master' into release
2022-06-01 13:54:11 +00:00
Moonchild
662dba55fd
Merge branch 'master' into release
2022-05-29 11:13:44 +00:00
Moonchild
8760ce023c
Issue #1895 - Implement queueMicroTask(callback()) (uplift)
2022-05-07 14:40:14 +00:00
Moonchild
b86e148bb7
Roll back milestone version to release.
2022-05-06 12:43:43 +00:00
Moonchild
9e83721e5e
Merge branch 'master' into release
2022-05-06 12:43:00 +00:00
Moonchild
dc2d6c2e60
Revert "No Issue - Make content-type on JAR channels behave the same as HTTP channels."
...
This reverts commit 425677ada7 .
2022-05-03 17:38:19 +00:00
Moonchild
4ada6f6762
Update 7zSD for v31
2022-05-03 17:38:12 +00:00