Commit graph

116 commits

Author SHA1 Message Date
Brian Smith
1b811bd711 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-30 21:17:54 +08:00
FranklinDM
ef8e3b5419 Issue #2053 - Part 5: Throw a DOMException instead of a JS exception for some errors 2023-04-12 10:03:50 +08:00
FranklinDM
53e2e5d8d6 Issue #1375 - Part 1: Allow moving a reference into nsInterfaceHashtable 2023-03-02 14:28:09 +08:00
Job Bautista
3796c7c1e1 Issue #2083 - Part 1: Make RegExpShared a GC thing.
Based on Mozilla bug 1345177.
Changes from the original bug's patch:

- We don't have JS::CurrentThreadIsHeapCollecting, so let's use
  trc->runtime()->isHeapCollecting() instead.
- Mozilla bug 1337117 renamed runtimeFromMainThread to
  runtimeFromActiveCooperatingThread for Firefox 54, so let's use the former
2023-02-01 07:35:50 +08:00
Moonchild
8bf892d728 [xpcom] remove incorrect assertion.
See https://repo.palemoon.org/MoonchildProductions/UXP/pulls/2095#issuecomment-33796
2023-01-30 12:56:44 +08:00
FranklinDM
558b83975c Issue #2065 - Part 3: Process install manifests with --track in the recursive make backend
This excludes parts that remove support for building the Mozilla SDK.
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1390916
2022-12-30 09:20:05 +08:00
FranklinDM
eb0c06101f Issue #2027 - Use reserved stack space instead of heap allocation in nsLocalFile
This should resolve the build bustage associated with c127f58ef3.

Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1371279
2022-11-25 11:44:36 +08:00
Moonchild
dc04d9f795 [XPCOM] Deal with lstat potentially lying in nsLocalFileUnix. 2022-11-25 11:44:00 +08:00
Moonchild
3fccd404fb [XPCOM] Fix Base64 off-by-one issue and safeguard against this mistake in the future. 2022-10-27 09:03:59 +08:00
Job Bautista
b3e43f41a8 Issue #1980 - Fix build bustage for applications where WebRTC building is enabled.
Turns out we have a duplicate VoidFunction callback in the WebIDLs. Per
 Mozilla bug 1324169, we should remove this callback from
 RTCPeerConnection.webidl and let Function.webidl handle it instead.
The AttributeError faced by the new Basilisk dev wasn't helpful at all;
 and turns out Mozilla had this exact same issue on bug 1505504. We're
 also backporting that just in case we encounter another case of
 callback duplication.
Also doing a minor fix in the MicroTaskRunnable class which Moonchild
 forgot to do while working on Issue #1895.
2022-08-04 14:26:21 +08:00
Moonchild
37d0ffa172 [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-05 17:25:29 +08:00
Brian Smith
9cc1870b9f Issue #1905 - Part 4d - Fix a crash calling a date and time function. Fixed by updating the xptcinvoke ARM64 code to the latest Mozilla version. 2022-06-22 09:01:02 +08:00
Brian Smith
076a0eb275 Issue #1905 - Part 3j - Rename the ARM64 assembly files to .S. Missed the moz.build file in the last commit. 2022-06-13 09:10:03 +08:00
Brian Smith
06aa3c8c37 Issue #1905 - Part 3i - Rename the ARM64 assembly files to .S. Necessary because they now need to be preprocessed. 2022-06-13 09:09:23 +08:00
Brian Smith
be240b3403 Issue #1905 - Part 3g - Final set of changes connecting ARM64 support for Mac. Back out some of the xptcstubs changes that are not viable for our codebase. 2022-06-13 09:01:34 +08:00
Brian Smith
e55ae571da Issue #1905 - Part 3f - Collection of fixes connecting ARM support to the Mac build. Also update ARM XPT code to add Mac/Apple support. 2022-06-13 09:01:18 +08:00
Brian Smith
fd04893c34 Issue #1891 - Fix ASAN and clang crashes on Linux, BSD and MacOS. Merge with the existing Solaris fix, by folding Solaris into the Linux/BSD section. Add Apple Silicon (ARM64) support. This should also address Issue #1884 by moving the offending code into assembly. 2022-05-12 09:44:33 +08:00
Stephen A Pohl
b188579bb6 [XPCOM] Improve the conversion of line breaks.
Fix an off-by-one error in CRLF checking.
2022-05-05 09:05:27 +08:00
Brian Smith
85468ffe86 Issue #1829 - Fix Mac breakage due to removal of Telemetry. 2022-05-04 09:45:04 +08:00
Brian Smith
13fcc4a046 Issue #1829 - Revert "Issue #1751" 2022-05-04 09:40:24 +08:00
Moonchild
eaf9e756a0 Issue #21 - Remove remaining telemetry structs, callers and flags. 2022-04-28 10:33:44 +08:00
Moonchild
8d800b1cb0 Issue #21 - Remove Telemetry plumbing and fix build.
Note this won't give working applications. Requires FE changes and
additional js module changes (next part).
2022-04-28 10:25:48 +08:00
Moonchild
d4eac725fd Issue #1877 - Resolve RELEASE_OR_BETA conditionals. 2022-04-21 21:46:47 +08:00
Moonchild
8751960d9a [XPCOM] xpcom Threadpool cleanup
Make sure thread locks are in place to guard accesses.
2022-04-10 22:58:37 +08:00
Moonchild
7de4e86727 [XPCOM] xpcom/threads misc cleanup 2022-04-10 22:57:27 +08:00
Moonchild
bd80099e2c [xpcom] Timer cleanup, assertions and comments. 2022-03-22 23:22:59 +08:00
Moonchild
bf17b1fec3 Issue #3063 - Implement queueMicroTask(callback()) 2022-03-22 23:08:26 +08:00
roytam1
138137ddea Issue #unknown, change assignment method in nsThread::SetObserver() 2021-12-14 23:10:15 +08:00
roytam1
c72a393b93 Bug 1339588 - Part 1: Simplify nsTimerEvent::Cancel, since there's no need to release the nsTimerImpl itself. r=froydnj, a=dveditz 2021-12-14 23:10:15 +08:00
roytam1
f43ff83d54 backport Bug 1696685 - r=valentin,nika a=RyanVM 2021-12-14 23:10:15 +08:00
roytam1
eb0082ecaa backport Bug 1739421: Use kungFuDeathGrip when firing a timer r=bwc a=RyanVM 2021-12-14 23:10:14 +08:00
roytam1
8fb608b22d remove OSX support 2021-11-10 09:10:25 +08:00
roytam1
44959f50f8 Bug 1724107, be more precise when counting the number of allocator users, r=KrisWright a=RyanVM 2021-09-16 10:22:59 +08:00
roytam1
89c8257bcb Issue #1751 - Fix preprocessor typo to restore ARM Linux buildability 2021-09-16 10:22:52 +08:00
Moonchild
6c30b33915 [no issue] Replace PurpleBlock with SegmentedVector to reduce indirect memory
accesses when calling suspect

Improves overall memory performance.
Also prerequisite for further work on #1677.
2021-07-28 10:10:07 +08:00
Moonchild
ba00d14c12 Issue #1751 - Remove Mac code behind MOZ_WIDGET_TOOLKIT == 'cocoa' 2021-06-24 11:09:47 +08:00
Moonchild
8744911c18 Issue #1772 - Stop using legacy code page conversion for file paths on Linux.
OS.File already only supports UTF-8 paths on non-Windows systems, so this change
makes our different ways of accessing file paths consistent with each other.
This should prevent unexpected crashes in glibc that expect UTF-8.

This resolves #1772.
2021-05-21 09:34:12 +08:00
Moonchild
df94ccb22c Issue #1751 -- Remove XP_MACOSX conditionals and support files from /xpcom 2021-05-05 10:28:58 +08:00
Moonchild
2f27335cc4 Issue #1751 -- Remove XP_DARWIN 2021-05-05 10:27:04 +08:00
Moonchild
a9c8f3a84a Issue #1751 -- Remove XP_IOS 2021-05-05 10:26:14 +08:00
Brian Smith
e4030ad075 Issue #1690 - Part 1: Fix MacOS version detection above 10.15.
Changes based on Mozilla bug 1616404 but supporting back to 10.7.
2020-12-02 09:57:28 +08:00
Moonchild
035de9597b [xpcom] Don't use realloc for shrinking nsTArrays when allowRealloc is false.
The original patch handled the grow case but not the shrink case. When the
current and new allocation sizes are in different size classes, jemalloc's
realloc will move the allocation when shrinking, not just truncate the existing
one.

Based on work by Jon Coppeard.
2020-11-20 09:30:41 +08:00
David Major
07864a9251 [xpcom] Fix GetWindowsFolder storage 2020-11-19 21:11:57 +08:00
Moonchild
d5919942ff Issue #1656 - Part 8: Devtools and misc. 2020-09-25 22:06:55 +08:00
Moonchild
0cd673d720 Issue #1656 - Part 6: Clean up the build files 2020-09-25 22:04:23 +08:00
Moonchild
538b420319 Issue #1656 - Part 4: Manual cleanup 2020-09-25 22:04:20 +08:00
Moonchild
d7a4abc3d4 Issue #1656 - Part 4: Tackle *.idl, *.css, *.ipdlh, *.webidl, *.cc 2020-09-25 22:04:18 +08:00
Moonchild
8c395520d9 Issue #1656 - Part 1: Nuke most vim config lines in the tree.
Since these are just interpreted comments, there's 0 impact on actual code.
This removes all lines that match /* vim: set(.*)tw=80: */ with S&R -- there are
a few others scattered around which will be removed manually in a second part.
2020-09-25 22:04:12 +08:00
Gaming4JC
48006dc075 Issue #618 - Clear the module map - Debug Followup
An assertion was added to dom/script/ScriptLoader.cpp but fails to compile on debug builds due it not being included in the namespace.

Ref: BZ 1529203
2020-09-16 21:11:08 +08:00
Andrea Marchesini
7a37234be2 [xpcom] Make Base64 compatible with ReadSegments() with small buffers. 2020-07-31 08:07:55 +08:00