3a9c07fcc2ebb478ab21740f9d10d1af914bdac7: Bug 1511438 Part 1: Replace ProcessTypeRequiresWinEventHook with XRE_Win32kCallsAllowed. r=froydnj
Bob Owen <bobowencode@gmail.com> - Tue, 29 Jan 2019 08:49:13 +0000 - rev 513821
Push 10862 by ffxbld-merge at Mon, 11 Mar 2019 13:01:11 +0000
Bug 1511438 Part 1: Replace ProcessTypeRequiresWinEventHook with XRE_Win32kCallsAllowed. r=froydnj ProcessTypeRequiresWinEventHook was added when attempting to turn on win32k lockdown for GMP processes. Having a less specific, but globally accessible, function will make it more useful while applying win32k lockdown to other process types.
e741f3208ec83a53f26747af1acacb4d1263cab3: Bug 1512731: Add sandbox read rule for user's AppData\Local Fonts dir. r=handyman
Bob Owen <bobowencode@gmail.com> - Tue, 29 Jan 2019 08:49:13 +0000 - rev 513820
Push 10862 by ffxbld-merge at Mon, 11 Mar 2019 13:01:11 +0000
Bug 1512731: Add sandbox read rule for user's AppData\Local Fonts dir. r=handyman
1e042fc7de3d70b627d49ad85d6bc4404f4abcb9: Backed out 16 changesets (bug 1478124) for failing android geckoview-junit CLOSED TREE
arthur.iakab <aiakab@mozilla.com> - Tue, 29 Jan 2019 10:03:06 +0200 - rev 513819
Push 10862 by ffxbld-merge at Mon, 11 Mar 2019 13:01:11 +0000
Backed out 16 changesets (bug 1478124) for failing android geckoview-junit CLOSED TREE Backed out changeset fce62c77a56b (bug 1478124) Backed out changeset eb2fa3b5edf7 (bug 1478124) Backed out changeset 8dacce59fcc0 (bug 1478124) Backed out changeset 012fd0107204 (bug 1478124) Backed out changeset 496aaf774697 (bug 1478124) Backed out changeset 21f4fda03159 (bug 1478124) Backed out changeset b0444e0bc801 (bug 1478124) Backed out changeset d94039b19943 (bug 1478124) Backed out changeset 5d85deac61c2 (bug 1478124) Backed out changeset 929fd654c9df (bug 1478124) Backed out changeset 1ddd80d9e91a (bug 1478124) Backed out changeset b8d2dfdfc324 (bug 1478124) Backed out changeset f500020a273a (bug 1478124) Backed out changeset dd00365ebb55 (bug 1478124) Backed out changeset 538e40c5ee13 (bug 1478124) Backed out changeset bedaa9c437ad (bug 1478124)
ebf9f694b72d9b7bffb85888f053eb04d6c5b778: Bug 1522083 - Enable noopener by default for area and anchor elements with target=_blank and no rel attribute set, r=ehsan
Andrea Marchesini <amarchesini@mozilla.com> - Tue, 29 Jan 2019 08:25:42 +0100 - rev 513818
Push 10862 by ffxbld-merge at Mon, 11 Mar 2019 13:01:11 +0000
Bug 1522083 - Enable noopener by default for area and anchor elements with target=_blank and no rel attribute set, r=ehsan
fce62c77a56b3af3b01d0331879fdccc93d68aaf: Bug Bug 1478124: Follow-up: Really fix MSVC build. r=bloody-msvc
Kris Maglione <maglione.k@gmail.com> - Mon, 28 Jan 2019 22:32:55 -0800 - rev 513817
Push 10862 by ffxbld-merge at Mon, 11 Mar 2019 13:01:11 +0000
Bug Bug 1478124: Follow-up: Really fix MSVC build. r=bloody-msvc
eb2fa3b5edf7d5acfb8f3dfc76b906fd28f68866: Bug Bug 1478124: Follow-up: Fix MSVC build. r=bloody-msvc CLOSED TREE
Kris Maglione <maglione.k@gmail.com> - Mon, 28 Jan 2019 22:28:07 -0800 - rev 513816
Push 10862 by ffxbld-merge at Mon, 11 Mar 2019 13:01:11 +0000
Bug Bug 1478124: Follow-up: Fix MSVC build. r=bloody-msvc CLOSED TREE
8dacce59fcc0c966a3753b3ced9b1afd0043475a: Bug 1478124: Part 8f - Update NSS module to use a static component manifest. r=keeler
Kris Maglione <maglione.k@gmail.com> - Tue, 18 Dec 2018 18:55:40 -0800 - rev 513815
Push 10862 by ffxbld-merge at Mon, 11 Mar 2019 13:01:11 +0000
Bug 1478124: Part 8f - Update NSS module to use a static component manifest. r=keeler Differential Revision: https://phabricator.services.mozilla.com/D15045
012fd0107204da802f04b7c133b33a5dd22123a4: Bug 1478124: Part 8e - Update XPCOM module to use a static component manifest. r=froydnj
Kris Maglione <maglione.k@gmail.com> - Tue, 18 Dec 2018 20:28:14 -0800 - rev 513814
Push 10862 by ffxbld-merge at Mon, 11 Mar 2019 13:01:11 +0000
Bug 1478124: Part 8e - Update XPCOM module to use a static component manifest. r=froydnj Differential Revision: https://phabricator.services.mozilla.com/D15043
496aaf774697f817a689ee0d59f2f866fdb16801: Bug 1478124: Part 8d - Update netwerk module to use a static component manifest. r=mayhemer
Kris Maglione <maglione.k@gmail.com> - Sun, 16 Dec 2018 18:36:32 -0800 - rev 513813
Push 10862 by ffxbld-merge at Mon, 11 Mar 2019 13:01:11 +0000
Bug 1478124: Part 8d - Update netwerk module to use a static component manifest. r=mayhemer Differential Revision: https://phabricator.services.mozilla.com/D15042
21f4fda0315963e42bae8784c63116f00ee0fa92: Bug 1478124: Part 8c - Update Layout module to use a static component manifest. r=Ehsan
Kris Maglione <maglione.k@gmail.com> - Wed, 23 Jan 2019 15:45:56 -0800 - rev 513812
Push 10862 by ffxbld-merge at Mon, 11 Mar 2019 13:01:11 +0000
Bug 1478124: Part 8c - Update Layout module to use a static component manifest. r=Ehsan Differential Revision: https://phabricator.services.mozilla.com/D15041
b0444e0bc801f828b49f9953a73498cf5ff5024b: Bug 1478124: Part 8b - Update DocShell module to use a static component manifest. r=bzbarsky
Kris Maglione <maglione.k@gmail.com> - Sun, 16 Dec 2018 17:27:58 -0800 - rev 513811
Push 10862 by ffxbld-merge at Mon, 11 Mar 2019 13:01:11 +0000
Bug 1478124: Part 8b - Update DocShell module to use a static component manifest. r=bzbarsky Differential Revision: https://phabricator.services.mozilla.com/D15040
d94039b199437180309264cb4c206ae7ebb7d21d: Bug 1478124: Part 8a - Update toolkit module to use a static component manifest. r=froydnj
Kris Maglione <maglione.k@gmail.com> - Sun, 16 Dec 2018 16:03:00 -0800 - rev 513810
Push 10862 by ffxbld-merge at Mon, 11 Mar 2019 13:01:11 +0000
Bug 1478124: Part 8a - Update toolkit module to use a static component manifest. r=froydnj Differential Revision: https://phabricator.services.mozilla.com/D15039
5d85deac61c2ee54a69525de8bdfff4be72d224c: Bug 1478124: Part 7 - Add docs for static component manifests. r=froydnj
Kris Maglione <maglione.k@gmail.com> - Tue, 18 Dec 2018 14:15:21 -0800 - rev 513809
Push 10862 by ffxbld-merge at Mon, 11 Mar 2019 13:01:11 +0000
Bug 1478124: Part 7 - Add docs for static component manifests. r=froydnj Differential Revision: https://phabricator.services.mozilla.com/D15038
929fd654c9dfc3222e1972faadea3cc066e51654: Bug 1478124: Part 6 - Add helpers for creating/inspecting static modules. r=froydnj
Kris Maglione <maglione.k@gmail.com> - Sat, 15 Dec 2018 14:17:27 -0800 - rev 513808
Push 10862 by ffxbld-merge at Mon, 11 Mar 2019 13:01:11 +0000
Bug 1478124: Part 6 - Add helpers for creating/inspecting static modules. r=froydnj The static XPCOM manifest format makes it easy to define a component in a single place, without separate contract ID and CID macro definitions in headers, and variable constants in module files. Without any other changes, however, those macros are still required in order to create instances of or retrieve services for the component. This patch solves that problem by allowing component definitions to include an explicit component name, and adding helpers for each named component to Components.h: mozilla::components::<Name>::CID() to retrieve its class ID. mozilla::components::<Name>::Create() to create a new instance. mozilla::components::<Name>::Service() to retrieve its service instance. These getters have the benefit of doing full compile-time sanity checking, with no possibilty of using a mistyped contract ID string, or a macro constant which has gotten out of sync with the component entry. Moreover, when possible, these getters are optimized to operate on module entries directly, without going through expensive hash lookups or virtual calls. Differential Revision: https://phabricator.services.mozilla.com/D15037
1ddd80d9e91a17c01f0a8a73036810042a0ab080: Bug 1478124: Part 5 - Add AutoIDString helper, and use where appropriate. r=froydnj
Kris Maglione <maglione.k@gmail.com> - Tue, 18 Dec 2018 20:57:10 -0800 - rev 513807
Push 10862 by ffxbld-merge at Mon, 11 Mar 2019 13:01:11 +0000
Bug 1478124: Part 5 - Add AutoIDString helper, and use where appropriate. r=froydnj We have tons of code in the component manager which stringifies nsIDs so that it can print the result. The standard stringification process is pretty bloated, and makes the code difficult to update. And, frankly, I mostly just got tired of copying it around. This patch adds a helper which stringifies a nsID to a nsAutoCString, which can be used as a temporary value in a single statement, rather than requiring a separate local variable and function call for each operation. Differential Revision: https://phabricator.services.mozilla.com/D15036
b8d2dfdfc324c53ce5aacc822ce52d4e2bfdc31a: Bug 1478124: Part 4b - Support loading components from static lookup tables. r=froydnj
Kris Maglione <maglione.k@gmail.com> - Tue, 18 Dec 2018 20:30:13 -0800 - rev 513806
Push 10862 by ffxbld-merge at Mon, 11 Mar 2019 13:01:11 +0000
Bug 1478124: Part 4b - Support loading components from static lookup tables. r=froydnj This patch essentially creates a separate, static component database for statically-defined CID and contract ID entries, and gives it precedence over the runtime DB. It combines the two separate databases by updating existing code to use lookup functions which understand both databases, and then access all entries through wrappers which defer to the appropriate underlying type. Static component entries require no runtime relocations, and require no writable data allocation aside from one pointer-sized BSS entry per CID, and one bit of BSS per contract ID. To achieve this, all strings in the static lookup tables are stored as indexes into a static string table, all constructor functions live in a switch statement which compiles to a relative jump table, and all writable data for static entries is accessed by indexed lookups into BSS arrays. We also avoid creating nsIFactory entries for static components when possible by adding a CreateInstance method to nsFactoryEntry and the corresponding entry wrapper to directly call the appropriate constructor method, and only create a factory object when required by external code. Differential Revision: https://phabricator.services.mozilla.com/D15035
f500020a273a27c66bf2166505a0e97bbc34a214: Bug 1478124: Part 4a - Add XPCOM_MANIFESTS moz.build variable for XPCOM component manifests. r=froydnj
Kris Maglione <maglione.k@gmail.com> - Wed, 12 Dec 2018 18:29:57 -0800 - rev 513805
Push 10862 by ffxbld-merge at Mon, 11 Mar 2019 13:01:11 +0000
Bug 1478124: Part 4a - Add XPCOM_MANIFESTS moz.build variable for XPCOM component manifests. r=froydnj This aggregates a list of all static component manifests in the tree, and writes them out to a `manifests-lists.json` file, which is read by the codegen scripts in the next patch. It slightly abuses the IDL lists machinery, given that these aren't technically IDL files. But the semantics are similar enough that it seemed like the best option. Differential Revision: https://phabricator.services.mozilla.com/D15034
dd00365ebb55a06b4d6896bc86dd0fc94482d805: Bug 1478124: Part 3 - Add a lookup table for ProcessMatchesSelector. r=froydnj
Kris Maglione <maglione.k@gmail.com> - Tue, 18 Dec 2018 14:48:53 -0800 - rev 513804
Push 10862 by ffxbld-merge at Mon, 11 Mar 2019 13:01:11 +0000
Bug 1478124: Part 3 - Add a lookup table for ProcessMatchesSelector. r=froydnj Currently, when we build the component registry at startup, we exclude any entry with a process selector which doesn't match the current process. When we switch to static lookup tables, however, that check is going to have to happen for every lookup, since we can't alter the table at runtime. That may not matter much, given how expensive the rest of the component lookup code is relative to ProcessMatchesSelector, but it's also easy and cheap enough to generate a lookup table for all possible ProcessSelector values, and do a quick index check instead. Differential Revision: https://phabricator.services.mozilla.com/D15033
538e40c5ee1336a7ba467f0f4128dcddf97ef75d: Bug 1478124: Part 2 - Factor out common GetService code. r=froydnj
Kris Maglione <maglione.k@gmail.com> - Fri, 14 Dec 2018 14:42:27 -0800 - rev 513803
Push 10862 by ffxbld-merge at Mon, 11 Mar 2019 13:01:11 +0000
Bug 1478124: Part 2 - Factor out common GetService code. r=froydnj The current implementations of GetService are slightly different for contract IDs than they are for CIDs, but I'm pretty sure that's unintentional. This patch factors out the common parts of the two implementations, which should prevent them from diverging in the future, and avoids the need to make the same changes in multiple places in the following patches. Differential Revision: https://phabricator.services.mozilla.com/D15032
bedaa9c437ad30ea88bdc0e8fc83f4a2e980812e: Bug 1478124: Part 1 - Update component mocks to replace and restore components sanely. r=froydnj
Kris Maglione <maglione.k@gmail.com> - Wed, 19 Dec 2018 15:49:48 -0800 - rev 513802
Push 10862 by ffxbld-merge at Mon, 11 Mar 2019 13:01:11 +0000
Bug 1478124: Part 1 - Update component mocks to replace and restore components sanely. r=froydnj For static components, I don't intend to allow removing or replacing CID entries, only contract ID entries. And I would generally prefer, when restoring overrides of those classes, to not create a new dynamic factory entry for the contract ID. We already have the ability to mock components without either of those issues, but registering a new CID entry for the mock (without unregistering the original), and then restoring the original by calling `registerFactory` with a null factory object. This patch updates our existing mocks to behave that way, and paves the way for the rest of the patches. Differential Revision: https://phabricator.services.mozilla.com/D15031
(0) -300000 -100000 -30000 -10000 -3000 -1000 -300 -100 -50 -20 +20 +50 +100 +300 +1000 +3000 +10000 tip