summaryrefslogtreecommitdiffstats
path: root/ipc
Commit message (Collapse)AuthorAgeLines
* MoonchildProductions#1251 - Part 23: Allow AMD64 build to work.athenian2002019-10-21-5/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* MoonchildProductions#1251 - Part 22: Remove some unused type declarations ↵athenian2002019-10-21-27/+1
| | | | | | | | | | 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.
* Fix a bunch of dumb typos and omissions.athenian2002019-10-21-2/+2
|
* MoonchildProductions#1251 - Part 10: ipc_channel_posix.cc should use IOV_MAX.athenian2002019-10-21-1/+10
| | | | | | | | | | | | 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.
* MoonchildProductions#1251 - Part 6: Solaris needs an audio implementation.athenian2002019-10-21-0/+4
| | | | 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.
* MoonchildProductions#1251 - Part 5: Fix POSIX compliance issue in ↵athenian2002019-10-21-1/+3
| | | | | | | | 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.
* MoonchildProductions#1251 - Part 4: Core build system changes, lots of ↵athenian2002019-10-21-23/+612
| | | | | | | | 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.
* Remove crashreporter toolkit files.wolfbeast2019-04-01-1/+0
| | | | Resolves #20
* Unhook CR exception handler.wolfbeast2019-04-01-2/+0
| | | | Tag #20
* Telemetry: Remove stubs and related codeadeshkp2019-01-12-6/+0
|
* Do not report resource-timing subdocument loads triggered by that subdocument.wolfbeast2018-12-14-4/+9
|
* Bug 1478575 - Unify CamerasChild shutdown paths.wolfbeast2018-09-11-0/+1
|
* Remove all C++ Telemetry Accumulation calls.wolfbeast2018-09-03-18/+0
| | | | | 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.
* Fix incorrect code removal in ipc.wolfbeast2018-08-29-0/+27
| | | | Follow-up to a930db1c9e8444ed89754c5a79085d59c7295952
* Remove unnecessary GCC version checkstrav902018-06-29-6/+2
|
* Refactor structured clone JSAPI to prevent mismatched scopes.wolfbeast2018-06-07-11/+12
| | | | Roll-up of bugs 1442722, 1455071, 1433642, 1456604 and 1458320.
* Remove support and tests for HSTS priming from the tree. Fixes #384Gaming4JC2018-05-26-6/+3
|
* Remove IPC CrashReporterClient/Hostwolfbeast2018-05-22-472/+0
| | | | Tag #20.
* Remove other gonk widget conditionals and unused files.wolfbeast2018-05-13-9108/+0
| | | | Tag #288.
* Remove MOZ_WIDGET_GONK [2/2]wolfbeast2018-05-13-167/+5
| | | | Tag #288
* Remove MOZ_B2G leftovers and some dead B2G-only components.wolfbeast2018-05-12-5/+0
|
* Remove sandbox ductwork conditional code.wolfbeast2018-05-03-346/+0
|
* Remove GMP sandbox code.wolfbeast2018-05-02-48/+0
|
* Remove content process sandbox code.wolfbeast2018-05-02-47/+0
|
* moebius#230: Consider blocking top level window data: URIs (part 3/3 without ↵janekptacijarabaci2018-04-22-0/+2
| | | | | | tests) https://github.com/MoonchildProductions/moebius/pull/230
* moebius#226: Consider blocking top level window data: URIs (part 2/2 without ↵janekptacijarabaci2018-04-22-0/+2
| | | | | | tests) https://github.com/MoonchildProductions/moebius/pull/226
* Remove base conditional code for crash reporter and injector.wolfbeast2018-03-30-286/+3
|
* Remove more obsolete checks in dom/media and ipc.wolfbeast2018-02-20-5/+2
|
* Remove more Vista checks in ipc codewolfbeast2018-02-20-45/+1
|
* Update executable manifests.wolfbeast2018-02-18-1/+0
|
* Remove remaining conditional GCZeal code.wolfbeast2018-02-03-18/+0
| | | | | | | | | | | | | | | Creates stubs: jsgc.h/cpp VerifyBarriers() stub MaybeVerifyBarriers() stub GCRuntime::computeNonIncrementalMarkingForValidation() stub GCRuntime::validateIncrementalMarking() stub GCRuntime::finishMarkingValidation() stub GCRuntime::pushZealSelectedObjects() stub bool useZeal? GCRuntime::runDebugGC() stub XPConnect: nsXPCComponents_Utils::SetGCZeal() stub (always NS_OK)
* Add m-esr52 at 52.6.0Matt A. Tobin2018-02-02-0/+221452