1
0
mirror of https://github.com/roytam1/UXP.git synced 2026-05-26 13:58:49 +00:00
Commit Graph

59 Commits

Author SHA1 Message Date
Moonchild 68639a9347 Clean up control flow in WaitableEvent. 2024-07-10 14:55:26 +08:00
Matheus Marinho 9e7d1492e6 Issue #2301 - Make Gecko Media Plugins optional when not building EME or WebRTC
Co-authored-by: Moonchild <moonchild@palemoon.org>
2023-09-14 10:22:47 +08:00
Moonchild 2f117eecaa 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-05 22:57:19 +08:00
Brian Smith dda19de1bf Issue #2000 - Stop using deprecated ext/hash_map. This has been long deprecated in favor of std::unsorted_map. Since all platforms are using modern compilers now it should not be a problem to switch over to std::unsorted_map in the single place hash_map is used. This allows us to build on platforms which have removed hash_map such as FreeBSD. 2022-09-07 10:39:29 +08:00
Jeremy Andrews 1856e4c18c Issue #1988 - Use libc's arc4random where available.
Configure was defining HAVE_ARC4RANDOM_BUF on systems that have it this whole
time, so the OS specific ifdefs weren't necessary. Maybe the flag that was in
the original patch was an obsolete name for that flag...
2022-08-24 09:27:48 +08:00
Moonchild c0f4b97fab Issue #1053 - Follow-up: Correct conditional define on POSIX systems.
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-27 21:47:53 +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 13fcc4a046 Issue #1829 - Revert "Issue #1751" 2022-05-04 09:40:24 +08:00
Moonchild d4eac725fd Issue #1877 - Resolve RELEASE_OR_BETA conditionals. 2022-04-21 21:46:47 +08:00
Moonchild a4b0f333ba Issue #1751 -- Remove XP_MACOSX conditionals from the rest of the tree.
This also removes some PP abuse and takes file entries out of PP when no longer
needed without XP_MACOSX conditionals.
2021-05-07 09:53:59 +08:00
Moonchild 9aed800398 Issue #1751 -- Remove files unused without XP_DARWIN 2021-05-05 10:27:29 +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
Olivier Certner 208a992fe9 Issue #1699 - Part 2: libevent: Remove 'evutil_secure_rng_add_bytes'
In fact, this is a security threat.

This function calls 'arc4random_addrandom', which was removed from the
reference implementation 7 years go [1], on the ground that this was in fact an
internal interface which is almost impossible to use correctly. This update has
since then been propagated to other implementations (e.g., FreeBSD, IllumOS,
Android).

Do this for all platforms, since 'evutil_secure_rng_add_bytes' is not even used
in the current tree, and for the reason stated above, should never be.

Related bugs at Mozilla and libevent: Links [2] and [3] below.

[1] http://marc.info/?l=openbsd-cvs&m=138238762705209&w=2
[2] https://bugzilla.mozilla.org/show_bug.cgi?id=931354
[3] https://sourceforge.net/p/levent/bugs/320/
2021-01-08 17:40:51 +08:00
Moonchild 810ce6aa74 Issue #1606 - Add support for multi-monitor DPI awareness v2 (W10 1706+) 2020-10-09 21:00:03 +08:00
Gaming4JC 0a7e2d0150 Issue #1656 - Fix broken comment from Part 1
Removing the vim line unintentionally broke the comment leading to build failure, this restores the comment.
2020-10-02 17:19:52 +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 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
Jiaxun Yang 08b5181555 Bug 1430745 - IPC: Fix unaligned accesses in DirReaderLinux
Tag: #1542
2020-05-23 06:55:31 +08:00
Matt A. Tobin fc8de58854 Make the reference to Handle unambiguous in ipc/testshell/XPCShellEnvironment.cpp
.. correctly
2020-04-03 09:30:53 +08:00
JMadgwick 1640ee7bc6 Issue #1471 - Fix building on sparc64 Linux
Correct various pre-processor defines for sparc64 and in mozjemalloc use the JS arm64 allocator on Linux/sparc64.
This corrects build problems opn Linux sparc64 and is in line with bugzilla bug #1275204.
2020-04-03 09:26:50 +08:00
Matt A. Tobin dd6048d3ec Issue #1053 - Remove android support from ipc except for ipc/chromium
This does not include android in the imported chromium code as specific research needs done on defines and logic.
2020-02-27 07:31:20 +08:00
wolfbeast 113362d3b3 Issue #1441 - Guard appomni/greomni with UXP_CUSTOM_OMNI env var.
This adds an addition to the environment set up for child processes
(plugin container) so that it may still be able to pass the omni
parameters there as-needed.
2020-02-15 07:03:45 +08:00
wolfbeast 25ae10aaec Issue #1342 - Remove support for system libevent 2020-01-24 09:36:30 +08:00
Matt A. Tobin 0b1090f40e No Issue - Fix indentation and account for system libevent in ipc/chromium/moz.build 2019-12-18 09:18:35 +08:00
athenian200 8e5c2bcaaa Issue #457 - Fix typo in ipc/chromium/src/base/sys_info_posix.cc
I made a typo in commit 687a789 when updating the ifdef style I used to comply with UXP standards. The typo I made resulted in a compiler warning I failed to notice, so I was asked to tag issue #457 when submitting the PR. I also fixed some trailing whitespace I apparently left behind in the file.
2019-11-22 10:52:00 +08:00
athenian200 1e75eb89f3 Fix nits.
I hope this addresses everything.
2019-11-04 11:54:09 +08:00
athenian200 45bf760ac5 MoonchildProductions#1251 - Part 27: Fix ifdef style.
This should do it for all the commits to files I changed, but while I'm in here I could probably go ahead and turn ALL the singular if defined statements into ifdef statements by using grep/find on the tree. On the other hand, perhaps we should do that as a separate issue so that this doesn't become a case of scope creep.
2019-11-04 11:54:07 +08:00
athenian200 0239eb8ac9 MoonchildProductions#1251 - Part 23: Allow AMD64 build to work.
https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/Build_Instructions/Compiling_32-bit_Firefox_on_a_Linux_64-bit_OS

Setting this up turned out to be easier than I thought it would be. All I had to do was apply these instructions in reverse and add the following to my .mozconfig file:

CC="gcc -m64"
CXX="g++ -m64"
AS="gas --64"
ac_add_options --target=x86_64-pc-solaris2.11
export PKG_CONFIG_PATH=/usr/lib/amd64/pkgconfig
ac_add_options --libdir=/usr/lib/amd64
ac_add_options --x-libraries=/usr/lib/amd64

Most of these changes were fairly trivial, just requiring me to make a few of the changes I made earlier conditional on a 32-bit build. The biggest challenge was figuring out why the JavaScript engine triggered a segfault everytime it tried to allocate memory. But this patch fixes it:

https://github.com/OpenIndiana/oi-userland/blob/oi/hipster/components/web/firefox/patches/patch-js_src_gc_Memory.cpp.patch

Turns out that Solaris on AMD64 handles memory management in a fairly unusual way with a segmented memory model, but it's not that different from what we see on other 64-bit processors. In fact, I saw a SPARC crash for a similar reason, and noticed that it looked just like mine except the numbers in the first segment were reversed. Having played around with hex editors before, I had a feeling I might be dealing with a little-endian version of a big-endian problem, but I didn't expect that knowledge to actually yield an easy solution.

https://bugzilla.mozilla.org/show_bug.cgi?id=577056

https://www.oracle.com/technetwork/server-storage/solaris10/solaris-memory-135224.html

As far as I can tell, this was the last barrier to an AMD64 Solaris build of Pale Moon.
2019-11-04 11:54:02 +08:00
athenian200 a5dcb0f82a MoonchildProductions#1251 - Part 22: Remove some unused type declarations from IPC process_util.
https://bugzilla.mozilla.org/show_bug.cgi?id=1397928

Was looking into that _POSIX_PATH_MAX/NAME_MAX issue earlier because it didn't make a lot of sense and I was thinking of other approaches besides char arrays, and I wanted to make sure it didn't cause problems after they did it. Turns out that one commit after this was added, Mozilla determined the code I was working on fixing to be dead code as of Firefox 58. I don't know if it's dead code in Pale Moon as well, but given that it compiles fine without it and I can't find any other references to szExeFile in the IPC code, that seems like a safe bet.

Besides, I determined config/pathsub.c already seems to do what this code looks like it's trying to do, and implements the solution of just defining NAME_MAX to 256 and having done with it that I nearly adopted after realizing that even OS/2 and BeOS, let alone Unix/Linux systems, all basically use that value and there's just disagreement on which system header to check for it.
2019-11-04 11:54:00 +08:00
athenian200 cbf60a2058 Fix a bunch of dumb typos and omissions. 2019-11-04 11:53:57 +08:00
athenian200 9df21e3a0e MoonchildProductions#1251 - Part 10: ipc_channel_posix.cc should use IOV_MAX.
https://bugzilla.mozilla.org/show_bug.cgi?id=1345102

I assess this change to be low-risk for the following reasons:

1. It has been in Firefox since version 55 without issues.

2. The current behavior is not POSIX compliant, and is retained in the one instance where the new functionality causes issues.

3. It makes safer assumptions about implementation details than what we have now.
2019-11-04 11:52:28 +08:00
athenian200 68ee7c2d20 MoonchildProductions#1251 - Part 6: Solaris needs an audio implementation.
Current versions of libcubeb already have a Sun audio implementation, but in Firefox 52 and earlier, this was all they had. I'm not completely happy with this implementation because it has issues like video freezing if the soundcard isn't working, but I think fixing this or pulling in a newer libcubeb would be going too far for too little gain.
2019-11-04 11:52:21 +08:00
athenian200 bfb6af4f3a MoonchildProductions#1251 - Part 5: Fix POSIX compliance issue in process_util.h.
https://bugzilla.mozilla.org/show_bug.cgi?id=1364865

Solaris doesn't define NAME_MAX because if you read the current POSIX standard literally, no system that supports multiple file systems or networking should be defining it. It's a pedantic choice given that they USED to define NAME_MAX, but Solaris always did take POSIX compliance seriously, for better or worse.
2019-11-04 11:52:19 +08:00
athenian200 afb2e3a054 MoonchildProductions#1251 - Part 4: Core build system changes, lots of libevent/IPC junk.
This is mostly ifdefs, but as you can see, Solaris is actually a lot like Linux. They're both more SysV than BSD at core, and most of the differences have more to do with Solaris not using glibc than anything else.

I still need to audit a lot of these changes and understand why they're needed and what the alternative approaches are. After this patch, most of the core functionality needed to build Solaris is here.
2019-11-04 11:52:17 +08:00
wolfbeast 905323d092 Remove crashreporter toolkit files.
Resolves #20
2019-04-04 20:29:55 +08:00
wolfbeast 8ec2b1b1b5 Unhook CR exception handler.
Tag #20
2019-04-04 20:26:49 +08:00
adeshkp aea50f182f Telemetry: Remove stubs and related code 2019-02-16 00:24:04 +08:00
wolfbeast 27d88fc505 Do not report resource-timing subdocument loads triggered by that subdocument. 2019-02-16 00:22:18 +08:00
wolfbeast 6d43998298 Bug 1478575 - Unify CamerasChild shutdown paths. 2019-02-16 00:13:12 +08:00
wolfbeast 8c8145e620 Remove all C++ Telemetry Accumulation calls.
This creates a number of stubs and leaves some surrounding code that may be irrelevant (eg. recorded time stamps, status variables).
Stub resolution/removal should be a follow-up to this.
2019-02-16 00:12:32 +08:00
wolfbeast 1d958d0390 Fix incorrect code removal in ipc.
Follow-up to a930db1c9e8444ed89754c5a79085d59c7295952
2019-02-16 00:12:15 +08:00
trav90 afedf5b82e Remove unnecessary GCC version checks 2019-02-16 00:06:37 +08:00
wolfbeast 0795e50d87 Refactor structured clone JSAPI to prevent mismatched scopes.
Roll-up of bugs 1442722, 1455071, 1433642, 1456604 and 1458320.
2019-02-16 00:01:32 +08:00
Gaming4JC d4ac94cf3e Remove support and tests for HSTS priming from the tree. Fixes #384 2019-02-15 23:59:39 +08:00
wolfbeast 4f9e1b3147 Remove IPC CrashReporterClient/Host
Tag #20.
2019-02-15 23:58:29 +08:00
wolfbeast 74df182488 Remove other gonk widget conditionals and unused files.
Tag #288.
2019-02-15 23:57:15 +08:00
wolfbeast 2531de02eb Remove MOZ_WIDGET_GONK [2/2]
Tag #288
2019-02-15 23:57:10 +08:00