Commit graph

6,168 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
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
32da3f4de4 Issue #2678 - Remove the DOM proxy expando object hashtable in xpconnect. 2025-01-20 21:06:59 +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
9f4fe4275c Issue #2678 - Don't use QI to canonicalize nsISupports pointers in the purple buffer.
The nsISupports objects added to the purple buffer are already canonical,
so we can avoid some overhead by not QIing them to
`nsCycleCollectionISupports`.
2025-01-20 21:06:34 +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
624ff30bfc [network] Don't try to use non-existing connections. 2025-01-18 10:31:13 +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
024ab86be6 [network] Verify connection NPN against negotiated NPN. 2025-01-10 22:30:15 +08:00
Moonchild
d63a56adac Issue #2673 - Part 4: Hook up the ADTS sniffer + raw AAC MIME type. 2025-01-10 22:29:32 +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
8f5a66b486 Issue #2673 - Part 3: Fix coding style. 2025-01-10 22:28:54 +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
Moonchild
e448ec4c0d [no issue] Remove duplicate FLAC MIME type define. 2025-01-10 22:27:44 +08:00
Moonchild
2e1c487563 Issue #2670 - Compute baseDomain when cookies are read from the database
baseDomain is used as a key for cookies in a hashmap. For cookie
operations to work properly, the baseDomain generation must be reliable.
This is, however, not the case, because the result can change by updates
to the public suffix list (PSL).

Since the stored baseDomain is not reliable, the value must be recomputed
when the database is read. This causes a minor performance hit but is
needed if we want to keep abreast of PSL changes without clobbering the
cookies database.

Resolves #2670
2024-12-28 21:53:30 +08:00
Moonchild
d935c4f54c Issue #2672 - Follow-up: Remove unused telemetry variable. 2024-12-28 21:52:54 +08:00
Moonchild
d69e2a3779 Issue #2672 - Part 4: Prevent db access while rebuilding is underway. 2024-12-28 21:52:29 +08:00
Moonchild
032b0ae0d8 Issue #2672 - Part 3: Ensure thread lifetimes are in tandem. 2024-12-28 21:52:05 +08:00
Moonchild
fe53a0bb1c Issue #2672 - Part 2: Auto-close syncConn for edge cases. 2024-12-28 21:51:39 +08:00
Moonchild
aec27853c6 Issue #2672 - Part 1: Load nsCookieService OMT and use sync reads.
No more lazy-loading on the main thread, thanks. Everyone needs this.
2024-12-28 21:51:14 +08:00
Martok
334de9ffcc Issue #1787 - Follow-up: remove no longer used AppClearDataObserver. 2024-12-20 13:43:05 +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
Brian Smith
a29afdfafe No Issue - Fixes assembling with binutil as >= 2.41. effadce6c7 Same code exists in libav so applying the same patch there as well. 2024-12-20 13:42:18 +08:00
Brian Smith
1554c778f4 No Issue - Make nsCocoaWindow hold a death grip on its native window until its destructor. https://bugzilla.mozilla.org/show_bug.cgi?id=1880582 2024-12-20 13:41:57 +08:00
Kai Engert
e825209039 [NSS] Bug 1899402 - Correctly destroy bulkkey in error scenario. r=jschanck
Differential Revision: https://phabricator.services.mozilla.com/D223837

--HG--
extra : rebase_source : d06a6bb8d51bb844c814c5ee682a1b24de3e2e69
2024-11-29 20:55:45 +08:00
Moonchild
857990d172 [XPCOM] Warn about .library-ms files on Windows (treat as executable) 2024-11-29 20:53:57 +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
01624751a1 [network] Update effective TLD names list. 2024-11-29 20:50:54 +08:00
Moonchild
6c6ab6de1a [js] Avoid potential crash if GC cell is no longer valid. 2024-11-29 20:50:26 +08:00
Moonchild
ff89fee91d Issue #1787 - Remove nsIAppsService, mozIApplication and mozapp data cleanup. 2024-11-21 21:09:05 +08:00
Moonchild
ef5f052d97 Issue #2657 - Remove -moz-samplesize resize-decoding for low-vram mobiles
Resolves #2657
2024-11-21 21:08:24 +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
Moonchild
60e671e956 Issue #2652 - Part2: Add "Clear DNS cache" button to about:networking
Resolves #2652
2024-11-21 20:57:41 +08:00
Moonchild
f5ef327563 Issue #2652 - Part 1: Add a way to programmatically clear the DNS cache. 2024-11-21 20:57:16 +08:00
Moonchild
1f038cd026 No Issue - stop spewing useless xfo < CSP warning in non-debug builds
This warning throws off a lot of users reporting issues. It's not even
a proper warning as it's informative at best.
Leave it in for debug builds, but stop spewing these common notices in
release builds.
2024-11-21 20:56:53 +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