Commit graph

1,438 commits

Author SHA1 Message Date
Moonchild
0121aefb61 Issue #2678 - Remove now-unnecessary ClearExternalRefsForWrapperRelease.
All DOMProxyHandler::ClearExternalRefsForWrapperRelease now does is clear
a backpointer to the expando, and that's handled during reflector
finalization already, making it redundant.
2025-01-20 21:07:31 +08:00
Moonchild
c9c941f321 Issue #2678 - Stop using EnsureExpandoObject in codegen code when we just want to preserver the wrapper for a DOM proxy. 2025-01-20 21:07:17 +08:00
Moonchild
45bb4cb8b4 Issue #2678 - Switch DOMProxyHandler::EnsureExpandoObject to using normal wrapper preservation instead of RegisterDOMExpandoObject. 2025-01-20 21:06:46 +08:00
Moonchild
14c84e22a9 Issue #2676 - Implement AbortSignal.timeout()
This is a stub implementation because of the considerable abuse risk and
bad web code risk causing DoS, e.g. when using bad timeout values and
callbacks on the AbortSignal (e.g. recursive).
Considering the abort-ability of these signals otherwise there is never
a guarantee to websites that these signals will be triggered anyway, so
it should be considered an optional signal - meaning we can safely just
ignore the timeout, which allows us to avoid a ton of complexity and
potential sec/privacy issues.

Primary use in the wild seems to be detailed profiling/ad metrics anyway;
we don't really want to encourage that!
2025-01-20 21:06:19 +08:00
Moonchild
9fa4b6fd5d Issue #2676 - Implement AbortSignal.abort() 2025-01-20 21:06:05 +08:00
Moonchild
949e3f0ac6 Issue #2676 - Don't keep AbortController alive for AbortSignal 2025-01-20 21:05:47 +08:00
Moonchild
5ea8de0262 [DOM] Convert cleanup of FlushCurrentWord() to a ScopeExit task.
Ensures consistent cleanup even if early exit due to OOM.
2025-01-10 22:31:52 +08:00
Moonchild
e60e1266e9 [DOM] Slightly extend lifetime of data in Structured Clone operations. 2025-01-10 22:30:58 +08:00
Moonchild
8f52da3288 Issue #2673 - Part 2b: Improve ADTS format sniffer's performance.
Also avoids false positives.
2025-01-10 22:29:13 +08:00
Moonchild
e25b285ca7 Issue #2673 - Part 2: Add ADTS format sniffer. 2025-01-10 22:28:30 +08:00
Moonchild
0c2130e615 Issue #2673 - Part 1: Minor ADTSDemuxer cleanup. 2025-01-10 22:28:10 +08:00
Martok
d9dbae4aa9 No issue - Follow-up: fix compilation 2024-12-20 13:42:47 +08:00
Moonchild
1bdfca3920 No issue - Cloned <audio>/<video> elements should respect muted attribute. 2024-12-20 13:42:32 +08:00
Moonchild
24f3a981b6 Issue #2255 - Follow-up: Check if we actually have a non-null global object.
This should avoid the intermittent crashes that are still being reported
on this issue that end up crashing because of a proxied object that can't
be unwrapped after being passed around.
2024-11-29 20:53:06 +08:00
Moonchild
ff89fee91d Issue #1787 - Remove nsIAppsService, mozIApplication and mozapp data cleanup. 2024-11-21 21:09:05 +08:00
Moonchild
75d698133f Issue #2654 - Remove pre-allocated process manager.
Resolves #2654
2024-11-21 21:05:30 +08:00
Moonchild
04b285b848 Issue #2653 - Part 5: Simplify and clean up some quota code
Since we no longer need a complex check, we can remove some indirection.
2024-11-21 21:03:17 +08:00
Moonchild
53cab0f8ce Issue #2653 - Part 4: Remove isApp from quota manager and its clients 2024-11-21 21:02:50 +08:00
Moonchild
7f086f216c Issue #2653 - Part 3: Remove support for packaged apps from asmjscache 2024-11-21 21:02:19 +08:00
Moonchild
0e6fa95840 Issue #2653 - Part 2: Update tests 2024-11-21 21:01:54 +08:00
Moonchild
7b6e3a2d4a Issue #2653 - Part 1: Initial cleanup of AppId and isolated mozbrowser.
This removes a lot of the plumbing for having the platform embed itself
through IPC which was required for B2G running the browser as both
shell and browser application.
2024-11-21 21:01:27 +08:00
Moonchild
a6c54d0736 No issue - Stop WebGL context forcing spew in non-debug builds. 2024-11-21 20:58:01 +08:00
Karl Tomlinson
9ba1057e54 Bug 1920800 - Remove oldImages from check for flushed old principal handle
The logic should be equivalent when frame IDs on aImages are contiguously
increasing from IDs on previously set frames.

There are currently no callers passing empty aImages, but the logic in this
case would now be as described in the documentation of
UpdatePrincipalHandleForFrameID():

> We will notify mElement that aPrincipalHandle has been applied when all
> FrameIDs prior to aFrameID have been flushed out.
2024-10-31 21:47:54 +08:00
Moonchild
7d978ccd71 Issue #2641 - Update Fetch to adhere to the updated spec (pass refpolicy)
Resolves #2641
2024-10-24 07:37:31 +08:00
Moonchild
f6f046930d Issue #2641 - Speculative load changes for referrerpolicy 2024-10-24 07:37:15 +08:00
Moonchild
b848a924bc [GMP] Factor out more detailed CheckDimensions function for CreateFrame. 2024-10-03 14:35:40 +08:00
Boris Zbarsky
32498a0694 Bug 1493449 - Change the default credentials mode for module scripts from 'omit' to 'same-origin'
Resolves #2642
2024-10-01 10:27:55 +08:00
Moonchild
ea2268b5e8 Bug 1900191 - Use nestegg advertised default duration if it exists. 2024-10-01 10:27:39 +08:00
Moonchild
8cb68d8ea8 Bug 1878510 - Follow-up: Explicitly pass values through variadic functions
While MSVC has no issue with this and understands values should be passed,
clang doesn't like it and aborts.
2024-10-01 10:27:24 +08:00
Moonchild
60c31a5473 Bug 1878510 - When recreating WebM demuxer when encountering a new segment, propagate media time 2024-10-01 10:27:11 +08:00
FranklinDM
97a40adc75 Issue #2251 - Expose ghost window unlinking to release builds. 2024-09-22 20:43:48 +08:00
Moonchild
b9e7ecd8bc [DOM] Stop exposing NotifyPaintEvent to web content.
There's no reason this should be available to the web, as it's an
indicator of browser internals.
2024-09-06 09:16:23 +08:00
Moonchild
9d6ffb5814 Issue #1810 - Add DOMMatrix {get|set}Transform WebIDL interfaces 2024-08-21 10:48:36 +08:00
Moonchild
18f039543a Issue #1810 - Allow superfluous [LenientFloat] extended attributes.
This changes the way the extended attribute [LenientFloat] behaves, so
that overloading functions can match extended attributes while not
having restricted float type arguments themselves.
2024-08-21 10:48:21 +08:00
Moonchild
71bd54891a Issue #1810 - Implement {get|set}Transform with DOMMatrix arguments.
We already had part of the plumbing for other canvas manipulations, so
this is somewhat simplified.

This excludes the interface as that is breaking the build at this stage.
Some more research is required.
2024-08-21 10:48:06 +08:00
Moonchild
314ba652f4 [DOM] Pass error up the chain in SetColorValue. 2024-08-09 15:16:03 +08:00
Moonchild
ec7351a5d4 Issue #1925 - Remove use of NS_SIDE_* macros. 2024-08-05 10:31:46 +08:00
Moonchild
bd439689e1 Issue #2515 - Clarify only dispatching in chrome. 2024-08-05 10:29:41 +08:00
Moonchild
7e3f0d53a2 Issue #2515 - Remove mForceContentDispatch and mNoContentDispatch 2024-08-05 10:29:26 +08:00
FranklinDM
cac56b8e77 Issue #2486 - Part 1: Initial plumbing and CSSOM support for cascade layers 2024-07-18 22:31:18 +08:00
Moonchild
d0e568577f Issue #2547 - Remove hidden network.dns.disablePrefetchFromHTTPS pref.
Resolves #2547
2024-07-18 22:31:03 +08:00
Moonchild
c94c6a5785 [Dom/network] Disable DNS prefetching if document nodePrincipal is systemPrincipal 2024-07-10 21:58:10 +08:00
Moonchild
7cc4dcb680 Issue #2546 - Part 6: Remove canvas.imagebitmap_extensions.enabled preference. 2024-07-10 14:51:38 +08:00
Moonchild
aaf2dd416c Issue #2546 - Part 5: Remove tests 2024-07-10 14:51:18 +08:00
Moonchild
b1e5955ceb Issue #2546 - Part 4: Remove mappedDataLength and findOptimalFormat 2024-07-10 14:50:59 +08:00
Moonchild
1bc0eda791 Issue #2546 - Part 3: Remove mapDataInto 2024-07-10 14:50:41 +08:00
Moonchild
2b8d75e136 Issue #2546 - Part 2: Remove special FoxEye CreateImageBitmap method. 2024-07-10 14:50:16 +08:00
Moonchild
60fbaa2155 Issue #2546 - Part 1: Remove BufferSource support in CreateImageBitmap. 2024-07-10 14:50:00 +08:00
Moonchild
fffe6c4996 Issue #2542 - Part 7: Move SecFetch.* to /netwerk where it belongs. 2024-07-10 14:49:06 +08:00
Moonchild
53149ed646 Issue #2542 - Part 6: Add Sec-Fetch-User header for all requests that are the direct result of a system principal request.
This means navigation resulting from interaction with the browser UI
should result in a -user header (address bar navigation, bookmarks, etc.)
2024-07-10 14:48:35 +08:00