Commit graph

1,279 commits

Author SHA1 Message Date
Moonchild
38daeffb9b Issue #2678 - Avoid QIing for NoteXPCOMRoot.
This callback is only used in very limited ways, so just require that the
caller passes in the canonical supports pointer plus the participant.

This probably won't affect performance much.
2025-01-20 21:07:45 +08:00
Moonchild
32da3f4de4 Issue #2678 - Remove the DOM proxy expando object hashtable in xpconnect. 2025-01-20 21:06:59 +08:00
roytam1
c6517989ab Merge remote-tracking branch 'origin/tracking' into custom 2024-11-29 21:00:51 +08:00
Moonchild
6c6ab6de1a [js] Avoid potential crash if GC cell is no longer valid. 2024-11-29 20:50:26 +08:00
roytam1
310c05b97a Merge remote-tracking branch 'origin/tracking' into custom 2024-11-21 21:09:29 +08:00
Moonchild
7f086f216c Issue #2653 - Part 3: Remove support for packaged apps from asmjscache 2024-11-21 21:02:19 +08:00
roytam1
6db7856f7f Merge remote-tracking branch 'origin/tracking' into custom 2024-11-13 23:24:49 +08:00
Moonchild
1878228db7 Issue #2305 Part 4: Check for failure when getting RegExp match result template
Null deref crash fix.
2024-11-13 23:24:27 +08:00
Martok
a382c2aa66 Issue #2305 Part 3c: Merge repeated loops over MatchPairs 2024-11-13 23:23:59 +08:00
Martok
6dbe2de6db Issue #2305 Part 3b: Create .indices and .indices.groups 2024-11-13 23:23:27 +08:00
Moonchild
2d8696c4fe Issue #2305 Part 3a: Pass ResultTemplateKind through CreateRegExpMatchResult
This sets up the MatchResult with the proper structure to contain indices
when necessary.
2024-11-13 23:23:00 +08:00
Moonchild
845d36d582 Issue #2305 Part 2: Support .indices in match result template objects
Before match indices, all match results had the same shape. (If there are
no named capture groups, `.groups` exists but is undefined.) Match results
with `.indices` have a distinct shape, so we need a distinct template
object. We also need a template object for `.indices` itself.
2024-11-13 23:21:30 +08:00
Moonchild
47ef1701b3 Issue #2305 Part 1: Add support for hasIndices to RegExpFlags (/d)
Adds recognition and parsing of the /d RegExp flag.
Drive-by correction: add missing "s" for dotAll to RegExpObject::toString.
Tag #1284 and #2008
2024-11-13 23:20:49 +08:00
Moonchild
8bbcb50b62 Revert "Issue #2645 - Fix type confusion for ResumeKind"
This reverts commit 12e9db2481d2b542e4f32f9b5ba63a4c72b874d5.
2024-10-31 21:46:55 +08:00
roytam1
f890f88314 Revert "Issue #2645 - Fix type confusion for ResumeKind"
This reverts commit 19c4996881.
2024-10-24 22:55:27 +08:00
roytam1
7df6fa1c80 Merge remote-tracking branch 'origin/tracking' into custom 2024-10-24 07:39:14 +08:00
Moonchild
e665b30629 Issue #2645 - Return null if getName() PC is invalid. 2024-10-24 07:37:47 +08:00
Moonchild
19c4996881 Issue #2645 - Fix type confusion for ResumeKind
It used a mix of uint8_t and uint16_t. Set it to uint16_t.
Also don't allow non-typeset to simplify stubs used in compound opcodes.
2024-10-24 07:36:44 +08:00
roytam1
73f3390cf8 Merge remote-tracking branch 'origin/tracking' into custom 2024-10-03 14:35:59 +08:00
Steve Fink
9a6e3bc30d [js] Disallow deserializing structured clone buffers with transferables more than once. 2024-10-03 14:35:12 +08:00
roytam1
2b0cdc7b62 Merge remote-tracking branch 'origin/tracking' into custom 2024-09-22 20:54:25 +08:00
Martin Husemann
b1fd3b72cf Make NetBSD/powerpc use the powerpc atomic ops.
NetBSD/powerpc gcc does not predefine __ppc__, but only __powerpc__,
so add that to the preprocessor ifdef cascade to select atomic
ops.
2024-09-22 20:45:12 +08:00
Moonchild
efad094b02 Make inaccurate GC stats reporting non-fatal in debug builds.
Not sure why this was fatal as it only hinders being able to report memory
issues to a debugging dev :P
2024-09-22 20:44:32 +08:00
FranklinDM
97a40adc75 Issue #2251 - Expose ghost window unlinking to release builds. 2024-09-22 20:43:48 +08:00
Moonchild
2b4e577d8e No issue - Fix asserts in debug.
Hashbang parser changes allow more than one EOL which screws up these
assertions' premise. Just remove them as the preconditions are no longer
valid.
2024-09-22 20:43:23 +08:00
Brian Smith
27e66e3f82 No Issue - Fix building for Apple Silicon Mac with Xcode 16. Due to the following LLVM change labels need to be outside .cfi_start/endprocs: https://reviews.llvm.org/D155245 Solution pointed out here is to move the label above .cfi_startproc: https://github.com/libffi/libffi/issues/807 2024-09-22 20:42:53 +08:00
roytam1
1b648cc1d8 Merge remote-tracking branch 'origin/tracking' into custom 2024-09-13 10:04:42 +08:00
Nia Alarie
dd6526daae js: Support for the MPROTECT security feature (PaX and NetBSD)
On such platforms, remapping memory that was once writable
to executable is forbidden unless the initial mmap() is declared
to change in such a way using the PROT_MPROTECT macro.
2024-09-13 10:02:50 +08:00
roytam1
a088e79f72 js/xpconnect: pre-C++17 fix 2024-09-06 09:30:05 +08:00
roytam1
8a8546f49f Merge remote-tracking branch 'origin/tracking' into custom 2024-09-06 09:18:37 +08:00
Moonchild
ec8793a094 [js xpconnect] Fix error handling in xpc::CreateSandboxObject 2024-09-06 09:17:32 +08:00
Moonchild
8f31479968 [js] Simplify with-env handling in FetchName 2024-09-06 09:16:51 +08:00
Moonchild
7cc9551e79 Issue #2559 - Implement hashbang grammar
This adds special-case #! comment handling at the top level, treating
any hashbang line as a single-line comment in the parser.
This only applies to Eval(), module script or global context.
2024-09-06 09:15:51 +08:00
roytam1
688fa00ac4 Merge remote-tracking branch 'origin/tracking' into custom 2024-07-02 22:08:41 +08:00
Moonchild
ef1f142cde Issue #2531 - Adjust rounding in toExponential (and kin) to round up at midpoint.
Resolves #2531
2024-07-02 22:08:14 +08:00
Moonchild
f4b6cee0cc Issue #2543 - adjust toFixed precision range according to spec update.
As pointed out in the ecma-262 spec change discussion, the behavior is
inconsistent for negative numbers because the exponential fallback assumes
all the digits will be displayed. The negative support was motivated just
by consistency, without any particular concrete use cases, and it's not
supported in other browsers, so this patch removes negatives.

Resolves #2543
2024-07-02 22:07:55 +08:00
roytam1
f4188fb54e HACK: jsgc: check nullptr before call member function in mayBeOwnedByOtherRuntime() 2024-06-30 13:22:11 +08:00
roytam1
d835b252d7 Merge remote-tracking branch 'origin/tracking' into custom 2024-06-13 11:32:08 +08:00
Moonchild
40c9102d6d [js gc] Suppress GC during JSObject::swap
We already suppressed GC for part of this, but we may sweep before the pre-write
barrier is established.
The simplest and safest thing is to suppress GC for the whole method.
2024-06-13 11:30:25 +08:00
roytam1
5f2d0b3c95 Merge remote-tracking branch 'origin/tracking' into custom 2024-06-04 10:16:58 +08:00
Martok
2128ac642e Issue #2519 - Use parser error reporter to report missing module exports 2024-06-04 10:16:36 +08:00
roytam1
de7e7860ff tzdata: update to 2024a 2024-04-21 07:47:52 +08:00
roytam1
552db66da0 Merge remote-tracking branch 'origin/tracking' into custom 2024-04-19 09:37:04 +08:00
Moonchild
dc52303799 [js] Simplify tracing of arguments in MarkThisAndArguments. 2024-04-19 09:34:45 +08:00
roytam1
4f792793c2 Merge remote-tracking branch 'origin/tracking' into custom 2024-04-08 11:13:25 +08:00
Moonchild
6176bd62d9 Issue #2490 - Part 12: Convert CSSStyleRule to WebIDL.
The .style PutForwards bit is coming along for the ride here, aligning us with
the behavior of Blink and Gecko.
2024-04-08 11:01:02 +08:00
Moonchild
525606c15d Issue #2490 - Part 11: Convert CSSImportRule to WebIDL.
Note that the .media PutForwards is a new feature coming along for the ride, now
that we're using the spec IDL.
2024-04-08 10:59:42 +08:00
roytam1
a944026bae Merge remote-tracking branch 'origin/tracking' into custom 2024-04-02 22:57:21 +08:00
FranklinDM
6d154eee11 Issue #58 - Follow-up: Remove Rust binding leftovers 2024-04-02 22:46:00 +08:00
roytam1
0db181d2b7 Merge remote-tracking branch 'origin/tracking' into custom 2024-01-29 15:31:31 +08:00