Граф коммитов

5416 Коммитов

Автор SHA1 Сообщение Дата
Kris Maglione 0c6cd02ae1 Bug 1483664: Part 0 - Dispatch pagehide/pageshow to all system group listeners on frameloader swap. r=smaug,mconley
Having to add pagehide/pageshow listeners to the chrome event target is a
serious inconvience for the use cases of this bug. Dispatching to system group
listeners has approximately the same effect as the old code, but is much
easier for window-bound code to handle.

--HG--
extra : rebase_source : d67c14e9ba91772d8a9dd82481120b34bdb551e0
2018-08-15 20:06:49 -07:00
Hiroyuki Ikezoe 61a6f8e3f2 Bug 1478576 - A mochitest for system font change notification. r=froydnj,jimm,karlt
The test case in this patch fails without the proper fix in the first patch
in this patch series.

In this patch two new nsIDOMWindowUtils APIs are introduced to change the
system font settins in tests.  Currently the APIs work only on GTK+ platform.

Also to work the test case properly we need to open a new XUL window because we
don't propagate font changes into descendant documents yet (bug 1478212).

MozReview-Commit-ID: 4OLxEkEuF8d

--HG--
extra : rebase_source : 683e64f07c4d8820e5499d8c15b90975618559b8
2018-08-07 11:58:36 +09:00
Margareta Eliza Balazs 48299c8cd6 Merge inbound to mozilla-central. a=merge 2018-08-16 12:24:26 +03:00
Kris Maglione 1f29f16136 Bug 1480244: Follow-up: Re-add kungFuDeathGrip for mTabChildMessageManager. r=bz
--HG--
extra : rebase_source : 8afd353f25b767272e54e6e6537e892b86f7e715
2018-08-15 11:13:15 -07:00
Kris Maglione e890d39c82 Bug 1480244: Part 4 - Make child message managers non-global objects. r=bz
This is mostly self-explanatory. However, the patch also contains some minor
changes to frame scripts which expect to be able to call message manager
methods with a null target object, which stops working when they stop being
global objects.

MozReview-Commit-ID: HDT2RvK3F3L

--HG--
extra : rebase_source : bb3ce8861a261ff1bc28a28b3ff88ba0deaef552
2018-08-10 14:03:18 -07:00
Kris Maglione f84c2cf454 Bug 1480244: Part 1c - Rename TabChildGlobal to TabChildMessageManager. r=bz
MozReview-Commit-ID: ECtFjFV7dZa

--HG--
extra : rebase_source : 50e64fa4da1099ca2bd9e14c8679bb87c354015e
2018-08-10 14:04:23 -07:00
Kris Maglione ee36f9afd8 Bug 1480244: Part 1a - Rename ProcessGlobal to ContentProcessMessageManager. r=bz
After these patches, these objects will no longer be globals, which would make
their current names misleading. Parts 1a-1c give more appropriate names to the
bindings which will cease to be globals.

MozReview-Commit-ID: L8GolQaHnO5

--HG--
rename : dom/base/ProcessGlobal.cpp => dom/base/ContentProcessMessageManager.cpp
rename : dom/base/ProcessGlobal.h => dom/base/ContentProcessMessageManager.h
extra : rebase_source : c5db43ff4f56bc27c869a8051c8d2c000b3fe287
2018-08-02 15:03:50 -07:00
Kris Maglione 2ab798f156 Bug 1472491: Part 5κ - Add ManifestMessagesChild actor. r=mconley
MozReview-Commit-ID: 20toouW9YzT

--HG--
rename : dom/ipc/ManifestMessages.jsm => dom/ipc/ManifestMessagesChild.jsm
extra : rebase_source : 204b5e01e5a2bd15a077e763e27155016c886818
2018-07-30 11:39:52 -07:00
Kris Maglione 739cafdadd Bug 1472491: Part 4a - Add helper classes for lazily loading JS IPC actors. r=felipe
This adds the basic framework for defining IPC actors which are lazily
instantiated for the appropriate frame loaders based on DOM events, message
manager messages, and observers. Actual actors are defined in follow-up
commits.

MozReview-Commit-ID: Jb6CWWW7v3v

--HG--
extra : rebase_source : 6c465c492ef423616346d70047c4fd4b074af303
2018-08-11 15:27:12 -07:00
Brian Grinstead 9382a39249 Bug 1483274 - Remove nsIRemoteBrowser and always use nsIBrowser;r=smaug
Browsers can switch at runtime from remote to non-remote and vice versa,
which on the C++ side is detected from a XBL binding change which causes
nsIRemoteBrowser to either be implemented or not. Custom Elements can't
change at runtime in the same way, so unifying on a single [implements]
will allow browser (both remote and non-remote) to be migrated to a single
Custom Element.

To keep current functionality, this updates Qi calls into nsIRemoteBrowser
to instead Qi into nsIBrowser and check isRemoteBrowser.

Differential Revision: https://phabricator.services.mozilla.com/D3346

--HG--
extra : moz-landing-system : lando
2018-08-15 19:21:22 +00:00
Brian Hackett 4cf0d8901e Bug 1481352 - Add whitelist for remote scripts that can run in middleman processes, r=mccr8.
--HG--
extra : rebase_source : 9eabb532e1e310711777b14cd8a21881b646deca
2018-08-14 00:43:24 +00:00
Brian Hackett c628b4c529 Bug 1481351 - Fix some issues around PBrowser::Show message handling, tidy up web replay child headers, r=mccr8.
--HG--
extra : rebase_source : 25560255da80c4f27dbcc3c73272ba57f516d7f7
2018-08-14 00:40:15 +00:00
Brian Hackett a11ac30030 Bug 1481009 Part 8 - Remove unused RecordReplayFatalError message, r=froydnj.
--HG--
extra : rebase_source : e1fa0a6d34af127c2b92a9206e5c10829b3af358
2018-08-13 20:48:31 +00:00
Daniel Varga 9355025fd5 Merge mozilla-central to mozilla-inbound 2018-08-14 01:09:48 +03:00
Ting-Yu Lin 48d02834a5 Bug 1482665 Part 2 - Remove nsPresContext::AppUnitsPerCSSPixel() and replace it with mozilla::AppUnitsPerCSSPixel(). r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D3155
2018-08-13 14:29:28 -07:00
Alex Gaynor 95e22ca165 Bug 1481304 - shutdown connections to the windowserver in content processes; r=haik
They'll be reopened, so there's no security benefit, but this causes Activity
Monitor to not report the processes as 'not responding'.

Differential Revision: https://phabricator.services.mozilla.com/D2855

--HG--
extra : moz-landing-system : lando
2018-08-13 14:43:45 +00:00
Adrian Wielgosik be0c1a4f55 Bug 1481645 - Remove some redundant uses of do_QueryInterface. r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D2893

--HG--
extra : moz-landing-system : lando
2018-08-13 09:05:19 +00:00
Cosmin Sabou ca86972424 Backed out 8 changesets (bug 1481009) for causing devtools crashes @XUL + 0x37bba19. a=backout
Backed out changeset 11ee868c5903 (bug 1481009)
Backed out changeset 4a0c7dd5e1ac (bug 1481009)
Backed out changeset 4e6908123a97 (bug 1481009)
Backed out changeset 6869ea5ebd32 (bug 1481009)
Backed out changeset 85eec9cfc3d9 (bug 1481009)
Backed out changeset f7f4127aa9d8 (bug 1481009)
Backed out changeset 58598aa3cf0c (bug 1481009)
Backed out changeset 1ec7f635f4f3 (bug 1481009)
2018-08-12 14:50:41 +03:00
Brian Hackett 5484f6f04f Bug 1481009 Part 8 - Remove unused RecordReplayFatalError message, r=froydnj.
--HG--
extra : rebase_source : 38ca1b32f80897713c099d74f4e4a029b631948d
2018-08-08 16:51:35 +00:00
Margareta Eliza Balazs f617807241 Merge inbound to mozilla-central. a=merge 2018-08-10 12:17:09 +03:00
Alex Gaynor 2b60e5044b Bug 1480992 - fixed perma-fail compilation warning on beta builds; r=haik
Differential Revision: https://phabricator.services.mozilla.com/D2859

--HG--
extra : moz-landing-system : lando
2018-08-09 18:58:11 +00:00
dvarga e4943d4855 Backed out changeset 8171af14faf2 (bug 1481304) for failure at devtools/client/debugger/new/test/mochitest/browser_dbg-toggling-tools.js 2018-08-09 00:13:38 +03:00
Alex Gaynor b2114d076c Bug 1481304 - shutdown connections to the windowserver in content processes; r=haik
They'll be reopened, so there's no security benefit, but this causes Activity
Monitor to not report the processes as 'not responding'.

Differential Revision: https://phabricator.services.mozilla.com/D2855

--HG--
extra : moz-landing-system : lando
2018-08-08 16:43:46 +00:00
Gabriele Svelto 15adf94f4d Bug 1348273 - Convert crash annotations into a machine-readable list of constants; r=ted.mielczarek,njn,dholbert,mak,cpearce,mcmanus,froydnj,Dexter,jrmuizel,jchen,jimm,bz,surkov
This introduces the machinery needed to generate crash annotations from a YAML
file. The relevant C++ functions are updated to take a typed enum. JavaScript
calls are unaffected but they will throw if the string argument does not
correspond to one of the known entries in the C++ enum. The existing whitelists
and blacklists of annotations are also generated from the YAML file and all
duplicate code related to them has been consolidated. Once written out to the
.extra file the annotations are converted in string form and are no different
than the existing ones.

All existing annotations have been included in the list (and some obsolete ones
have been removed) and all call sites have been updated including tests where
appropriate.

--HG--
extra : source : 4f6c43f2830701ec5552e08e3f1b06fe6d045860
2018-07-05 15:42:11 +02:00
Kyle Machulis 2e307bc5eb Bug 1480645 - Remove nsIWebBrowserFocus; r=nika
Summary:
Only implemented by nsWebBrowser, only 2 methods used in TabChild.
Move methods to nsWebBrowser implementation and remove unused methods,
change names to something more obvious, and remove interface.

MozReview-Commit-ID: 4WwBrVWQEVy

Test Plan: Try run

Reviewers: nika

Tags: #secure-revision

Bug #: 1480645

Differential Revision: https://phabricator.services.mozilla.com/D2752
2018-08-07 15:12:56 -07:00
Kyle Machulis b92aaa5fa5 Bug 1480643 - Remove nsIWebBrowserSetup; r=nika
Summary:
We only use one branch of the property set method in
nsIWebBrowserSetup, in one place. Expose this setting in the C++ API
and remove the XPCOM interface.

This patch also exposes the nsWebBrowser.h header to the codebase,
meaning we can possibly start removing some uses of nsIWebBrowser
elsewhere.

MozReview-Commit-ID: G3gnRWJUx6M

Test Plan: Try run

Reviewers: nika

Tags: #secure-revision

Bug #: 1480643

Differential Revision: https://phabricator.services.mozilla.com/D2736
2018-08-07 15:12:56 -07:00
Kris Maglione d5418d7fd0 Bug 1479313: Don't load manifestMessages.js until needed. r=felipe
MozReview-Commit-ID: s2fq6XcgQ7

--HG--
rename : dom/ipc/manifestMessages.js => dom/ipc/ManifestMessages.jsm
extra : source : f5d647fae9733c5a19f53539fc6702de2a7fbbab
2018-07-29 13:18:26 -07:00
Cosmin Sabou 901f34bef4 Backed out 12 changesets (bug 1479309, bug 1479312, bug 1479313, bug 1479310, bug 1479235, bug 1479945, bug 1479241, bug 1479318) for causing a big performance regression on OS X. a=backout
Backed out changeset 915862a355e9 (bug 1479318)
Backed out changeset f150e62dcbbd (bug 1479241)
Backed out changeset a68daa762119 (bug 1479312)
Backed out changeset 2a5aa9de1fd9 (bug 1479945)
Backed out changeset 163276881d35 (bug 1479945)
Backed out changeset 20a1a11b4d0b (bug 1479945)
Backed out changeset ca43bd11f431 (bug 1479945)
Backed out changeset 71700b368132 (bug 1479945)
Backed out changeset f5d647fae973 (bug 1479313)
Backed out changeset 3583823171de (bug 1479310)
Backed out changeset 2d46e1fe3121 (bug 1479309)
Backed out changeset 8f9c9580f687 (bug 1479235)

--HG--
rename : browser/components/uitour/ContentUITour.jsm => browser/components/uitour/content-UITour.js
rename : dom/ipc/ManifestMessages.jsm => dom/ipc/manifestMessages.js
rename : toolkit/components/normandy/content/ShieldFrameListener.jsm => toolkit/components/normandy/content/shield-content-frame.js
rename : toolkit/components/normandy/shield-content-process.js => toolkit/components/normandy/content/shield-content-process.js
2018-08-07 17:30:52 +03:00
Jan de Mooij e4ef338836 Bug 1480678 part 5 - Use nsScriptErrorWithStack's stack global in ConsoleListener::Observe. r=bz 2018-08-04 15:30:40 +02:00
Noemi Erli 23c8a3a9f3 Backed out changeset 1e9ecba54e7b (bug 1348273) for failing on widget/tests/test_bug1123480.xul 2018-08-04 12:39:40 +03:00
Dorel Luca e10cc6aac4 Merge mozilla-central to mozilla-inbound
--HG--
extra : rebase_source : 8265ad85fc5376a71af7ed3afe8463b7178286f3
2018-08-04 01:08:25 +03:00
Alex Gaynor a826b27def Bug 1426100 - disable native event processing in content processes on macOS; r=haik
We originally thought that this would enable us to disconnect from the
windowserver local service (which is a significant sandbox escape risk),
however investigations revealed that that requires changes to WebGL and thus
will be handled separately.

This also corrects an incorrect usage of the (undocumented) APIs for closing
windowserver connections. If CGSSetDenyWindowServerConnections is called while
there are open connections it is a no-op, so it must be called after
disconnecting any open connections.

Differential Revision: https://phabricator.services.mozilla.com/D2478

--HG--
extra : moz-landing-system : lando
2018-08-02 15:18:51 +00:00
Gabriele Svelto 50ba13cce4 Bug 1348273 - Convert crash annotations into a machine-readable list of constants; r=ted.mielczarek,njn,dholbert,mak,cpearce,mcmanus,froydnj,Dexter,jrmuizel,jchen,jimm,bz,surkov
This introduces the machinery needed to generate crash annotations from a YAML
file. The relevant functions are updated to take a typed enum (in C++) and an
integer constant (in JavaScript). A JavaScript wrapper around the crash
reporter service is provided to hold the constants. The existing whitelists
and blacklists of annotations are also generated from the YAML file and the
existing duplicate code has been consolidated. Once written out to the .extra
file the annotations are converted in string form and are no different than
the existing ones.

All existing annotations have been included (and some obsolete ones removed)
and all call sites have been updated including tests.

--HG--
extra : rebase_source : b4f0d4bf83c64851028c271d3fab3ebcb6fbcd3e
2018-07-05 15:42:11 +02:00
Coroiu Cristina 1ba19a32ac Backed out changeset 86471a18672f (bug 1348273) for ESlint failure at toolkit/modules/WebNavigationChild.jsm
--HG--
extra : rebase_source : e0c94f49ddc1f1b119b72c06fccc1b4363b9d340
2018-08-03 22:48:51 +03:00
Gabriele Svelto eff24befbd Bug 1348273 - Convert crash annotations into a machine-readable list of constants; r=ted.mielczarek,njn,dholbert,mak,cpearce,mcmanus,froydnj,Dexter,jrmuizel,jchen,jimm,bz,surkov
This introduces the machinery needed to generate crash annotations from a YAML
file. The relevant functions are updated to take a typed enum (in C++) and an
integer constant (in JavaScript). A JavaScript wrapper around the crash
reporter service is provided to hold the constants. The existing whitelists
and blacklists of annotations are also generated from the YAML file and the
existing duplicate code has been consolidated. Once written out to the .extra
file the annotations are converted in string form and are no different than
the existing ones.

All existing annotations have been included (and some obsolete ones removed)
and all call sites have been updated including tests.

--HG--
extra : rebase_source : f0e8d229581ac5c0daa0e0454cb258746108e28d
2018-07-05 15:42:11 +02:00
Boris Zbarsky e2aafee76f Bug 1479569 part 3. Remove nsIContentFrameMessageManager. r=kmag 2018-08-02 23:49:09 -04:00
Boris Zbarsky e4b74becff Bug 1479569 part 2. Use the new messageManager getter on docshell. r=kmag
I generally tried to preserve the behavior of consumers where they treated an
exception from getInterface(Ci.nsIContentFrameMessageManager) as a signal to use
some sort of fallback.

I did change the behavior of consumers that walked up to the root same-type
docshell before getting the message manager to just get it directly from the
docshell they have.  Please review those parts carefully, and let me know if you
want me to ask some subject area experts to review those.
2018-08-02 23:49:09 -04:00
Csoregi Natalia 08c950712e Backed out 3 changesets (bug 1479569) for devtools/client/responsive.html failures. CLOSED TREE
Backed out changeset e123d0aa911c (bug 1479569)
Backed out changeset b828a58404e5 (bug 1479569)
Backed out changeset 97041ef8f311 (bug 1479569)
2018-08-03 10:39:12 +03:00
Boris Zbarsky b318c42b9e Bug 1479569 part 3. Remove nsIContentFrameMessageManager. r=kmag 2018-08-02 23:49:09 -04:00
Boris Zbarsky 0197de77c0 Bug 1479569 part 2. Use the new messageManager getter on docshell. r=kmag
I generally tried to preserve the behavior of consumers where they treated an
exception from getInterface(Ci.nsIContentFrameMessageManager) as a signal to use
some sort of fallback.

I did change the behavior of consumers that walked up to the root same-type
docshell before getting the message manager to just get it directly from the
docshell they have.  Please review those parts carefully, and let me know if you
want me to ask some subject area experts to review those.
2018-08-02 23:49:09 -04:00
Noemi Erli 8f66a71e70 Merge inbound to mozilla-central. a=merge 2018-08-02 11:54:46 +03:00
Kartikaya Gupta a17fda2acb Bug 1479277 - Don't try to send APZ messages after teardown. r=botond
MozReview-Commit-ID: 8l0h197hfTj

--HG--
extra : rebase_source : a65b07f66a05b9ec54aa859fa0d9384061332120
2018-07-30 10:00:34 -04:00
Kris Maglione fb8f4c7562 Bug 1479313: Don't load manifestMessages.js until needed. r=felipe
MozReview-Commit-ID: s2fq6XcgQ7

--HG--
rename : dom/ipc/manifestMessages.js => dom/ipc/ManifestMessages.jsm
extra : rebase_source : be3c8b11dac18219b2e4b8aafa8d213cd1435c80
2018-07-29 13:18:26 -07:00
Zibi Braniecki a0c2cfd168 Bug 1479606 - Sync BCP47 language tags between processes, not lang tags. r=jfkthame
Sync BCP47 language tags between processes, not lang tags.

Differential Revision: https://phabricator.services.mozilla.com/D2579

--HG--
extra : moz-landing-system : lando
2018-07-31 21:42:37 +00:00
Boris Zbarsky 754087a992 Bug 1446940 part 5. Stop getting docshells from windows via getInterface in dom/editor/etc code. r=kmag 2018-08-01 13:07:11 -04:00
Coroiu Cristina 38f8ebc675 Merge mozilla-central to inbound a=merge on a CLOSED TREE 2018-07-31 01:03:29 +03:00
Doug Thayer 5e6a26b00e Bug 1475913 - Re-enable forcepaint telemetry with attributes r=mconley
Fairly straightforward. This should allow us to enable our
forcepaint telemetry again without an added cost, since it's
just piggybacking on the existing content process BHR.

MozReview-Commit-ID: 83l9xnPfc9u

--HG--
extra : rebase_source : d53f1e9adfff1d9bf3610be634f9ece08a2ec154
2018-07-15 20:45:32 -07:00
Kartikaya Gupta 3faf3e38d9 Bug 1478016 - Add a strongly-typed LayersObserverEpoch type. r=mattwoodrow
MozReview-Commit-ID: 6fELexXRYeV

--HG--
extra : rebase_source : 0eb028ee9b98199d18421f7ff28433189940fdca
2018-07-30 09:24:50 -04:00
Tarek Ziadé a3fdf4760e Bug 1477943 - Add a unique id per PerformanceCounter instance - r=baku,froydnj
This new id is added in the PerformanceInfo data and helps consumers distinguish
counters.

MozReview-Commit-ID: 7kEmqJcVggM

--HG--
extra : rebase_source : 40cca4c937f846db93ec1315036ad1bac04bc762
2018-07-27 11:44:22 +02:00
Jan de Mooij 80adc67aba Bug 1478955 part 1 - Rename JSAutoRealm to JSAutoRealmAllowCCW. r=luke 2018-07-28 12:12:26 +02:00
Cosmin Sabou d71fce60ce Merge mozilla-central to mozilla-inbound. a=merge 2018-07-28 01:56:40 +03:00
Kris Maglione 3728216a20 Bug 1477753: Implement missing cycle collection hooks for SharedMap. r=mccr8
MozReview-Commit-ID: E0ncT3e1Wb2

--HG--
extra : rebase_source : b7697484e3cb8a3b5c77332ddca4019160e7fe80
2018-07-26 14:36:57 -07:00
Andreas Farre 875e9111dc Bug 1445659 - Remove dangling BrowsingContexts left from closing process. r=Nika
To not leave dangling BrowsingContexts due to crashing child processes
we need to detach all BrowsingContexts owned by a specific process
when that process goes away.

--HG--
extra : histedit_source : a737dd272224ae2595e8851813f3f9a66a2e01f2
2018-06-29 02:41:00 +03:00
Andreas Farre cbc727cdcf Bug 1445659 - Make BrowsingContext interact with bfcache. r=peterv
Have BrowsingContext keep its own cache to enable caching of
BrowsingContexts, especially in the parent process.

This isn't really optimal, since it effectively duplicates the
cache in the child process. BFcache keeps a list of strong pointers to
the list of cached nsDocShells, where each nsDocShell in turn keeps a
reciprocated strong pointer to its BrowsingContext, which in turn is
held in the BrowsingContexts list of cached contexts. Ideally these
caches should be merged.

--HG--
extra : histedit_source : 094370f6d54d83728e8433ec5c47003086146476
2018-06-28 05:40:00 +03:00
Andreas Farre 1d151a57c8 Bug 1445659 - Create basic Browsing Context in Content Parent and Child. r=peterv
Add BrowsingContext to allow the tree structure of docshells to exist
in several processes simultaneously. This is a first step towards
allowing a tree structure preserving separation of docshells across
processes.

--HG--
extra : histedit_source : d3c7f6ab4b9ae76f170c126d669ebd570e52f348
2018-07-26 10:31:00 +03:00
Blake Kaplan e4a0da7d25 Bug 1477343 - Remove PBrowser::IsParentWindowMainWidgetVisible. r=mccr8,bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D2347

--HG--
extra : moz-landing-system : lando
2018-07-26 19:26:02 +00:00
Dipen Patel 7641beb1f8 Bug 1475647 - Remove nsISSLStatusProvider interface. r=baku,Gijs,jchen,jryans,keeler,mcmanus
- Access nsISSLStatus directly as a member of nsITransportSecurityInfo
and nsISecureBrowserUI.  This is part of a larger effort to consolidate
nsISSLStatus and nsITransportSecurityInfo.
- The TabParent implementation of GetSecInfo will always return null.
- Removed unnecessary QueryInterface calls
- Style adherence updates

MozReview-Commit-ID: Dzy6t2zYljL

--HG--
extra : rebase_source : 9c400bed3c9d29a186fc987c9bd0ffceb37bfd94
2018-07-13 11:48:55 -07:00
Andreea Pavel d0f6470c17 Backed out changeset c235d6f86c22 (bug 1475647) for breaking firefox ui at testing/firefox-ui/tests/puppeteer/test_tabbar.py on a CLOSED TREE 2018-07-25 19:34:58 +03:00
Dipen Patel 8670057dd5 Bug 1475647 - Remove nsISSLStatusProvider interface. r=baku,Gijs,jchen,jryans,keeler,mcmanus
- Access nsISSLStatus directly as a member of nsITransportSecurityInfo
and nsISecureBrowserUI.  This is part of a larger effort to consolidate
nsISSLStatus and nsITransportSecurityInfo.
- The TabParent implementation of GetSecInfo will always return null.
- Removed unnecessary QueryInterface calls
- Style adherence updates

MozReview-Commit-ID: Dzy6t2zYljL

--HG--
extra : rebase_source : fbfbcf7608efbfb35c9be4018ff0f4e70b2768d2
2018-07-13 11:48:55 -07:00
Brian Hackett 9284b969d6 Bug 1479334 - Don't keep recording/replaying ContentParents alive, r=mrbkap.
--HG--
extra : rebase_source : 3989250ec249c2f36f8f1580b339157e926a71ff
2018-07-30 15:44:54 +00:00
Brian Hackett 354da63fd0 Bug 1477561 Part 2 - Explicitly pass pref handles around when spawning recording processes, r=kmag.
--HG--
extra : rebase_source : f3e51555d2b9eb74d57c83d3b38f58576b8a1501
2018-07-24 15:48:10 +00:00
Brian Hackett 83d770739d Bug 1477561 - Improve handling of shared memory preference data when spawning recording processes, r=mccr8.
--HG--
extra : rebase_source : eddad711819ffb1783f9a02cefbe2d75fd6b8f68
2018-07-24 15:46:38 +00:00
Boris Zbarsky 634a492dda Bug 1476145 part 9. Drop support for getting window utils via getInterface. r=nika 2018-07-24 19:47:43 -04:00
Brian Hackett 3b2167ce37 Bug 1465466 Part 5 - Don't use APZ in recording/replaying processes, r=kats,mconley.
--HG--
extra : rebase_source : 01a76161037131e0df626f591543bf9316016597
2018-07-23 21:51:24 +00:00
Brian Hackett 99d34528e4 Bug 1465466 Part 1 - Use a separate compositor in recording/replaying processes, r=nical.
--HG--
extra : rebase_source : 003f6557370f2e4e6959ea14e833f7e2e617c5b0
2018-07-23 21:46:47 +00:00
Kris Maglione 5520b46fd0 Bug 1477129: Part 2 - Fix SharedMap blob handling, and add tests. r=erahm
We were previously failing to send blobs to new content processes, which was a
problem for those processes. But we were also attempting to extract blobs for
new entries that we were serializing after we'd extracted their structured
clone data, and their blob array had been thrown away (which was a problem for
all processes).

This patch fixes both problems.

MozReview-Commit-ID: 3qbAmUTA85g

--HG--
extra : rebase_source : 87ed9356aa23ae83762a887cf12ba1f466e7bf61
2018-07-20 14:44:00 -07:00
Kris Maglione 231c722473 Bug 1477129: Part 1 - Handle BlobImpls when move constructing StructuredCloneData. r=baku
MozReview-Commit-ID: F1pm9qTpGCV

--HG--
extra : rebase_source : ad992a07392b7addd8edc000f56d473f30e9cecc
2018-07-19 18:14:13 -07:00
Brian Hackett 12f288e95b Bug 1465294 Part 15 - Don't paint from interrupt callback when recording/replaying, r=mconley.
--HG--
extra : rebase_source : c881950c9ac8881613fae673948830b9320e6c2d
2018-07-23 14:57:42 +00:00
Brian Hackett 938c8de7ae Bug 1465294 Part 5 - Only send first idle message from the middleman process, r=mrbkap.
--HG--
extra : rebase_source : 8973ce6b840027bc06e61216f690cdfde8d977d9
2018-07-23 14:51:34 +00:00
Brian Hackett 46423d819e Bug 1465294 Part 4 - Don't construct CPOW managers in middleman processes, r=smaug.
--HG--
extra : rebase_source : bec8115daf785ce74ca6b6f11cd0712624c4fe0e
2018-07-23 14:51:09 +00:00
Brian Hackett 11d1005390 Bug 1465466 Part 2 - Synchronously composite into a graphics shmem buffer when recording/replaying, r=nical.
--HG--
extra : rebase_source : a89c5fd8f87f82e5a93f9b3311617317a67b3333
2018-07-22 12:02:26 +00:00
Brian Hackett 3354a96d8d Bug 1465287 Part 8 - Allow spawning recording/replaying child processes and saving recordings, r=jld,mrbkap.
--HG--
extra : rebase_source : 1da4b1a7e485cfdafb38318860546ce3d0552815
2018-07-22 11:52:42 +00:00
Brian Hackett d138090586 Bug 1465287 Part 7 - Add IPDL and IDL for record/replay directives and fatal errors, r=mccr8.
--HG--
extra : rebase_source : 5f938acb994cf777cfd0630980f29aa03045789c
2018-07-22 11:51:55 +00:00
Brian Hackett 5054a18818 Bug 1465287 Part 6 - Use correct channel and pids when communicating with a middleman process, r=mccr8.
--HG--
extra : rebase_source : 856fa92eba119d09f0b111e51126a9817b52bb24
2018-07-22 11:51:30 +00:00
Brian Hackett b20882bec7 Bug 1465287 Part 5 - Initialize record/replay and middleman state, r=mccr8.
--HG--
extra : rebase_source : 81511f5560eeaede54d5b62e218877a105f4e07c
2018-07-22 11:50:28 +00:00
Brian Hackett 941f5341db Bug 1465452 Part 3 - Avoid recording some background hang monitor state, r=froydnj.
--HG--
extra : rebase_source : 4b2c9ff845f0da696ae5f9d7bc5edbbf11b7f796
2018-07-21 14:29:53 +00:00
Jan de Mooij 8c93c6e9e8 Bug 1475559 part 5 - Pass a global object to nsScriptErrorWithStack. r=bz
The stack object might be a CCW and we want to make it impossible to get a CCW's global. Now the caller has to supply a same-compartment global object, so we no longer rely on getting the CCW's global.
2018-07-21 14:34:37 +02:00
Bogdan Tara 97830f0e63 Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2018-07-20 00:55:33 +03:00
Ehsan Akhgari 3441526820 Bug 1476796 - Enable AntiTrackingCommon::AddFirstPartyStorageAccessGrantedFor() to notify consumers about completion of asynchronous results; r=baku
Right now consumers can't know when the parent process has finished talking
to the permission manager.  It would be nice to enable consumers to depend
on the status of the asynchronous task using a promise.
2018-07-19 17:04:56 -04:00
Coroiu Cristina edada2f46b Backed out changeset bc6d7dc3f10f (bug 1476796) for build bustage on a CLOSED TREE 2018-07-19 23:51:35 +03:00
Ehsan Akhgari 7c156959da Bug 1476796 - Enable AntiTrackingCommon::AddFirstPartyStorageAccessGrantedFor() to notify consumers about completion of asynchronous results; r=baku
Right now consumers can't know when the parent process has finished talking
to the permission manager.  It would be nice to enable consumers to depend
on the status of the asynchronous task using a promise.
2018-07-19 16:20:20 -04:00
Jed Davis 96c18b6c4a Bug 1467889 - Adjust some uses of XPCOM strings. r=mrbkap r=mstange
MozReview-Commit-ID: 5AG4WAmbLZz
2018-07-19 14:14:50 -06:00
Haik Aftandilian 59a99c8595 Bug 1350642 - Keep the tabCountResizable property in sync; r=dao
Differential Revision: https://phabricator.services.mozilla.com/D2197

--HG--
extra : moz-landing-system : lando
2018-07-19 18:05:35 +00:00
Haik Aftandilian e2f970d134 Bug 1350642 - Remove the PBrowser::Msg_GetTabCount sync IPC; r=mccr8
Bug 1350642 - Keep the tabCountResizable property in sync; r?dao

Differential Revision: https://phabricator.services.mozilla.com/D2196

--HG--
extra : moz-landing-system : lando
2018-07-17 19:41:16 +00:00
Gurzau Raul 8a871a6c46 Merge inbound to mozilla-central. a=merge 2018-07-19 12:54:18 +03:00
Kris Maglione 70f741edc9 Bug 1472342: Part 2 - Update SharedMap iterator methods to use provided JSContext. r=bz
MozReview-Commit-ID: E9RHi41HJCy

--HG--
extra : rebase_source : 1d89f88cf67d56367314d1aa909dccb340719e34
2018-07-18 13:08:44 -07:00
Jed Davis a6cb3c4d18 Bug 1475382 - Turn off async content process launching, pending better error handling. r=spohl
At the moment this isn't actually async because we immediately require
the pid and block on launch anyway.  It also crashes the entire browser
on otherwise recoverable launch errors, because code that wants the pid
isn't set up to handle that operation failing.

MozReview-Commit-ID: 5favGu34QCv

--HG--
extra : rebase_source : 3c81c53e1eb8ead353ef3477ed3ceea0f5edcbbe
2018-07-13 15:20:25 -06:00
Andrea Marchesini a053cf1c15 Bug 1476306 - Moving NullPrincipal/ContentPrincipal/SystemPrincipal under mozilla namespace - part 1 - NullPrincipal, r=ckerschb 2018-07-17 21:37:48 +02:00
Kris Maglione f2f08faf67 Bug 1471025: Part 7b - Don't load preference files in the content process. r=njn
With the parent sending a snapshot of its preference state at content process
startup, we're guaranteed to have the full set of built-in preferences in the
shared map at initialization time, so there's no need to load them again.

This also applies to static preference default values, so we skip setting
those, as well.

However, we do need to make sure that we update static preference cache
entries whose default values don't match the value in the shared map, since
they may have been changed by user preference files. In order to deal with
that, we iterate over all preferences in the map, and dispatch callbacks for
any that have user values.

MozReview-Commit-ID: DlRUbg7Qor3

--HG--
extra : intermediate-source : 7f4cc96fae1212cb2220770ac7311b9cc51af744
extra : absorb_source : 7c71a5994c26c2a1e34b291947a49ac5b3d633cb
extra : source : dc7ec17179d1961d91b897cec9f409786363ec9e
extra : histedit_source : f7c7a935e72af65446c2abc502744a066a6e2ae5%2C5cd3235724af3e5f22b772de171cea735ec4c047
2018-07-07 12:45:57 -07:00
Kris Maglione b744713e4e Bug 1471025: Part 3c - Also pass the shared preference map handle to Android content processes. r=jld
MozReview-Commit-ID: CTjDzVC9gcD

--HG--
extra : intermediate-source : 7c03b7dd00e9675f9ac045ed1ea733eb0486904f
extra : absorb_source : c79df6bd9ebbec3454fcca1a81cbfa540ad91a3e
extra : source : 38f690f30e78764763bb012045073fa781efa691
extra : histedit_source : 544ff4257f38fae99a800276d06eb0d719882ca2
2018-07-13 11:06:58 -07:00
Kris Maglione d7bd212b40 Bug 1471025: Part 3a - Pass shared preference map to (non-Android) content processes at startup. r=jld,njn
This adds an additional file descriptor to the set sent at content process
startup, for the read-only preference map that we share between all content
processes. This forms the base set of preferences. The other preferences FD
contains changes that the content process will need to apply on top of the
snapshot.

MozReview-Commit-ID: 6hc0HIxFmHg

--HG--
extra : intermediate-source : 46a6f9d0773ba2d756d8801cee79bfa994165d44
extra : absorb_source : a725a095946946797fd4f3abe6461e810b15d899
extra : source : e3bbc87b71af2f2ce1fa8bdf2cf26857c071ba5e
extra : histedit_source : 958212e804df7f9e1be6af182e73edc956b9a576
2018-07-02 15:40:38 -07:00
Kris Maglione 82bc4d713f Bug 1471025: Part 2 - Add a helper class creating and accessing shared preference map snapshots. r=njn,erahm
This is based on the SharedStringMap that's currently used for shared memory
string bundles.

When the parent process is ready to launch its first content process, it
creates a snapshot of the current state of the preference database, maps that
as read-only, and shares it with each content process. Look-ups in the
snapshotted map are done entirely using data in the shared memory region. It
doesn't require any additional per-process state data.

MozReview-Commit-ID: BdTUhak7dmS

--HG--
extra : intermediate-source : 434106f1b75e3ba900912f261bd22a1b7f5c931d
extra : absorb_source : 647ad37590448ad3c1eb8eb512bf671f262fa96e
extra : source : 68bb03c63b3cee1d47cbddfd3abf919f5783c04b
extra : histedit_source : 2228a9f8395929f5072a3c5ebda6ae3221e4a62d
2018-07-01 18:28:31 -07:00
Brindusan Cristian fe91a8922e Backed out 13 changesets (bug 1471025) for reftest failures on variation-format-hint-1a.html; bc failures performance/browser_preferences_usage.js; wpt failures on format-specifiers-variations.html. CLOSED TREE
Backed out changeset 6b672d70f335 (bug 1471025)
Backed out changeset 200bec7e766a (bug 1471025)
Backed out changeset 6c72dc1bff88 (bug 1471025)
Backed out changeset 7f4cc96fae12 (bug 1471025)
Backed out changeset b4f9178f132d (bug 1471025)
Backed out changeset 8eff817d2f7e (bug 1471025)
Backed out changeset f9362cf1add4 (bug 1471025)
Backed out changeset ce379eaab179 (bug 1471025)
Backed out changeset 7c03b7dd00e9 (bug 1471025)
Backed out changeset ff41551f5ff1 (bug 1471025)
Backed out changeset 46a6f9d0773b (bug 1471025)
Backed out changeset 434106f1b75e (bug 1471025)
Backed out changeset c490838c8329 (bug 1471025)
2018-07-14 01:16:06 +03:00
Kris Maglione 9e09f205af Bug 1471025: Part 7b - Don't load preference files in the content process. r=njn
With the parent sending a snapshot of its preference state at content process
startup, we're guaranteed to have the full set of built-in preferences in the
shared map at initialization time, so there's no need to load them again.

This also applies to static preference default values, so we skip setting
those, as well.

However, we do need to make sure that we update static preference cache
entries whose default values don't match the value in the shared map, since
they may have been changed by user preference files. In order to deal with
that, we iterate over all preferences in the map, and dispatch callbacks for
any that have user values.

MozReview-Commit-ID: DlRUbg7Qor3

--HG--
extra : source : dc7ec17179d1961d91b897cec9f409786363ec9e
extra : histedit_source : 285a99038c6731fed427cd8bc783b65f56e34ebb
2018-07-07 12:45:57 -07:00
Kris Maglione 92550be97d Bug 1471025: Part 3c - Also pass the shared preference map handle to Android content processes. r=jld
MozReview-Commit-ID: CTjDzVC9gcD

--HG--
extra : source : 38f690f30e78764763bb012045073fa781efa691
extra : histedit_source : 2daf7386fbc9f9696c73168d6421139c5cefc5b4%2Ca0adf715f65281047915e678f8c054e5ec671de3
2018-07-13 11:06:58 -07:00
Kris Maglione 088e306955 Bug 1471025: Part 3a - Pass shared preference map to (non-Android) content processes at startup. r=jld,njn
This adds an additional file descriptor to the set sent at content process
startup, for the read-only preference map that we share between all content
processes. This forms the base set of preferences. The other preferences FD
contains changes that the content process will need to apply on top of the
snapshot.

MozReview-Commit-ID: 6hc0HIxFmHg

--HG--
extra : source : e3bbc87b71af2f2ce1fa8bdf2cf26857c071ba5e
extra : histedit_source : dc1c7c8015e0443eed218f826fda9f5b38b3e062%2C4cfa2f90104ca3e907607d884ac86f73ad4995bf
2018-07-02 15:40:38 -07:00
Kris Maglione 7f2567e3d9 Bug 1471025: Part 2 - Add a helper class creating and accessing shared preference map snapshots. r=njn,erahm
This is based on the SharedStringMap that's currently used for shared memory
string bundles.

When the parent process is ready to launch its first content process, it
creates a snapshot of the current state of the preference database, maps that
as read-only, and shares it with each content process. Look-ups in the
snapshotted map are done entirely using data in the shared memory region. It
doesn't require any additional per-process state data.

MozReview-Commit-ID: BdTUhak7dmS

--HG--
extra : source : 68bb03c63b3cee1d47cbddfd3abf919f5783c04b
2018-07-01 18:28:31 -07:00
Brindusan Cristian a68383b333 Backed out 12 changesets (bug 1471025) for build bustages on dom/ipc/ContentProcess.cpp. CLOSED TREE
Backed out changeset 398ccedc20dc (bug 1471025)
Backed out changeset 599895de063e (bug 1471025)
Backed out changeset dc7ec17179d1 (bug 1471025)
Backed out changeset 5051f15fc200 (bug 1471025)
Backed out changeset faef4df47b20 (bug 1471025)
Backed out changeset d344247b8706 (bug 1471025)
Backed out changeset 83d98ea5ebac (bug 1471025)
Backed out changeset 38f690f30e78 (bug 1471025)
Backed out changeset 4b7a8a35ed95 (bug 1471025)
Backed out changeset e3bbc87b71af (bug 1471025)
Backed out changeset 68bb03c63b3c (bug 1471025)
Backed out changeset 4a8fbb472c91 (bug 1471025)
2018-07-13 22:11:24 +03:00
Kris Maglione c15ee94ddc Bug 1475612: Fix double file close on background thread. r=erahm
LSBUtils closes a file descriptor twice, once with fclose and then again with
close. It also does this on a background thread, during startup, which means
it tends to race with main thread code which opens files.

This patch fixes that, and also removes a work-around for the issue in the
MemMapSnapshot code.

MozReview-Commit-ID: JdDHt9ayFEl

--HG--
extra : rebase_source : 2000ede41108d6312734d8df7db98272b33528fa
extra : amend_source : 1443a596fab3e3126a22d44787adaf5e12e4587c
2018-07-12 23:13:04 -07:00
Kris Maglione c1de3fe2de Bug 1471025: Part 7b - Don't load preference files in the content process. r=njn
With the parent sending a snapshot of its preference state at content process
startup, we're guaranteed to have the full set of built-in preferences in the
shared map at initialization time, so there's no need to load them again.

This also applies to static preference default values, so we skip setting
those, as well.

However, we do need to make sure that we update static preference cache
entries whose default values don't match the value in the shared map, since
they may have been changed by user preference files. In order to deal with
that, we iterate over all preferences in the map, and dispatch callbacks for
any that have user values.

MozReview-Commit-ID: DlRUbg7Qor3

--HG--
extra : rebase_source : 93cad19e27d3aaf5d4cad358cdebd6d80b76f668
extra : absorb_source : 06cb8911c92b66f8863b5e184d88b923cdbd6adc
2018-07-07 12:45:57 -07:00