Commit graph

82 commits

Author SHA1 Message Date
Gabriele Svelto
76c8b67932 Bug 1627360 - Document and fix the serialization of the SubmittedFromInfobar crash annotation r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D69638

--HG--
extra : moz-landing-system : lando
2020-04-06 16:33:32 +00:00
Mike Conley
ba02ddc1e1 Bug 1618936 - Make the front-end more robust in how it handles content process launch failures. r=dao
Differential Revision: https://phabricator.services.mozilla.com/D67003

--HG--
extra : moz-landing-system : lando
2020-03-20 19:50:20 +00:00
Andreas Farre
6e42fb98f8 Bug 1563619 - Handle subframe crashes in BrowserParent::ActorDestroy. r=mconley,kmag,peterv
Differential Revision: https://phabricator.services.mozilla.com/D40937

--HG--
extra : moz-landing-system : lando
2019-08-26 13:08:32 +00:00
Gijs Kruitbosch
fffc7f0c58 Bug 1505913 - make plugin click-to-play and crash handling fission-compatible, r=mconley
At a high level, this change does the following:
- move the pluginchild actor to be a JSWindowActorChild
- move the parent handling from browser-plugins into a JSWindowActorParent
- move the crash handling from ContentCrashHandlers.jsm to the parent actor,
  using a `PluginManager` object. It needs to talk to the actors (and vice
  versa), so this seemed a better fit than spreading actor implementation
  details to other JSMs.
- switch to using plugin IDs to identify plugins cross-process, instead of
  combinations of names or other properties of the plugin tag. As part of that,
  ensured plugin IDs are unique between "fake" plugins and the other ones.
- drop support for having a notification for more than 1 plugin. We only support
  Flash, in practice, so there didn't seem to be much point in the added
  complexity of trying to support more than 1 thing.

Some notes:
- the previous implementation mixes runIDs (for NPAPI plugin process "runs")
  and GMP pluginIDs when doing crashreporting. AFAICT there is no guarantee
  these don't conflict, so I've split them out to avoid issues. There's a
  pluginCrashID object I pass around instead that has either a runID or
  pluginID. Happy to rename some more for clarity.
- the previous implementation used `pluginInfo` and `plugin` for a bunch of
  different types of variables. I've tried to be consistent, where:
  * `pluginElement` is a DOM element for a plugin
  * `activationInfo` is a JS object used to track click to play state for a plugin
  * `plugin` is a plugintag as returned by the pluginhost service
  * `pluginCrashID` is an identifier for a crashed plugin (see previous point).
- I'm still using broadcastAsyncMessage to tell the content processes about
  gmp plugin crashes and plugin crash submission updates, because there's no
  guarantee the actors are instantiated (for gmp plugins) nor can the parent
  easily find out which actors to talk to (for either gmp or npapi plugins).
  Open to suggestions there, too. I think our best bet might be moving that to
  IPDL-based IPC within the GMP code, but that feels like a separate bug.

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

--HG--
rename : browser/base/content/browser-plugins.js => browser/actors/PluginParent.jsm
extra : moz-landing-system : lando
2019-07-23 22:04:40 +00:00
Victor Porof
af7d1d3b67 Bug 1561435 - Format browser/modules/, a=automatic-formatting
# ignore-this-changeset

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

--HG--
extra : source : f3c632037a1064c41b1f8b02f477c854b2fb4362
2019-07-05 09:55:19 +02:00
Mike Conley
bff8e0ac63 Bug 1533955 - Show some UI to indicate that a subframe has crashed. r=NeilDeakin
Differential Revision: https://phabricator.services.mozilla.com/D29238

--HG--
extra : moz-landing-system : lando
2019-05-01 20:05:24 +00:00
Kyle Machulis
b1414002ac Bug 1524709 - Remove aShouldBeRemote from updateBrowserRemoteness; r=nika
Just set the RemoteType in the options object argument, instead of
doubling up the information.

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

--HG--
extra : moz-landing-system : lando
2019-03-14 00:51:30 +00:00
Kris Maglione
e930b89c34 Bug 1514594: Part 3 - Change ChromeUtils.import API.
***
Bug 1514594: Part 3a - Change ChromeUtils.import to return an exports object; not pollute global. r=mccr8

This changes the behavior of ChromeUtils.import() to return an exports object,
rather than a module global, in all cases except when `null` is passed as a
second argument, and changes the default behavior not to pollute the global
scope with the module's exports. Thus, the following code written for the old
model:

  ChromeUtils.import("resource://gre/modules/Services.jsm");

is approximately the same as the following, in the new model:

  var {Services} = ChromeUtils.import("resource://gre/modules/Services.jsm");

Since the two behaviors are mutually incompatible, this patch will land with a
scripted rewrite to update all existing callers to use the new model rather
than the old.
***
Bug 1514594: Part 3b - Mass rewrite all JS code to use the new ChromeUtils.import API. rs=Gijs

This was done using the followng script:

https://bitbucket.org/kmaglione/m-c-rewrites/src/tip/processors/cu-import-exports.jsm
***
Bug 1514594: Part 3c - Update ESLint plugin for ChromeUtils.import API changes. r=Standard8

Differential Revision: https://phabricator.services.mozilla.com/D16747
***
Bug 1514594: Part 3d - Remove/fix hundreds of duplicate imports from sync tests. r=Gijs

Differential Revision: https://phabricator.services.mozilla.com/D16748
***
Bug 1514594: Part 3e - Remove no-op ChromeUtils.import() calls. r=Gijs

Differential Revision: https://phabricator.services.mozilla.com/D16749
***
Bug 1514594: Part 3f.1 - Cleanup various test corner cases after mass rewrite. r=Gijs
***
Bug 1514594: Part 3f.2 - Cleanup various non-test corner cases after mass rewrite. r=Gijs

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

--HG--
extra : rebase_source : 359574ee3064c90f33bf36c2ebe3159a24cc8895
extra : histedit_source : b93c8f42808b1599f9122d7842d2c0b3e656a594%2C64a3a4e3359dc889e2ab2b49461bab9e27fc10a7
2019-01-17 10:18:31 -08:00
Paolo Amadini
ce13039af3 Bug 1471403 - Part 2 - Lazify the creation of "notificationbox" elements. r=dao,bgrins
Differential Revision: https://phabricator.services.mozilla.com/D10892

--HG--
extra : rebase_source : f66fe90d780c3d446f4a065c0397cbb37f43cb0c
2018-11-09 14:38:49 +00:00
Mike Conley
7fc357cb04 Bug 1492950 - Move ZoomManager reset for crashed tabs into ContentCrashHandlers.jsm. r=Felipe
Depends on D6706

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

--HG--
extra : moz-landing-system : lando
2018-10-02 17:50:09 +00:00
Mark Banner
691543ee89 Bug 1486739 - Add missing dangling commas in browser/, services/, taskcluster/ and toolkit/. r=mossop
Automatic changes by ESLint, except for manual corrections for .xml files.

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

--HG--
extra : moz-landing-system : lando
2018-08-31 05:59:17 +00:00
Kris Maglione
80327d3561 Bug 1484496: Part 5a - Convert browser/ nsISimpleEnumerator users to use JS iteration. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D3729

--HG--
extra : rebase_source : e187b8e9a6b6db7ebc762adda5e489b25c7a7e43
extra : histedit_source : 868cb99d09954a51d6be321fcb516475ef70eb33
2018-08-18 19:27:33 -07:00
Felipe Gomes
6e2a493f16 Bug 1369466 - Change consumers to the new location of RemotePageManager. r=mossop
MozReview-Commit-ID: 66YVrSfIpYj

--HG--
extra : rebase_source : 594e8b1ecd3338804efd598f65cc3d61b800306c
2018-07-26 22:09:12 -03:00
Stephen A Pohl
48e98b6ec3 Bug 1366808: Add tests for about:restartrequired page. r=felipe 2018-05-08 10:32:06 -04:00
Stephen A Pohl
339982e013 Bug 1366808: Add telemetry probe for about:restartrequired page. r=jimm,chutten 2018-05-08 10:31:59 -04:00
Stephen A Pohl
860c14b396 Bug 1366808: Properly detect buildID mismatches between parent and child processes and display about:restartrequired to prompt the user to restart Firefox before proceeding. r=jimm,felipe,bz 2018-05-08 10:31:44 -04:00
Mike de Boer
ecf63670d4 Bug 1034036 - Part 2: Rename and shorten getMostRecentBrowserWindow to getTopWindow and modernize the style used in BrowserWindowTracker.jsm. r=dao
MozReview-Commit-ID: EvgAhq4uR3a

--HG--
extra : rebase_source : 8fd8040cd1eee94675d4e9ca0c8ccc60db9e1bf7
2018-04-11 12:05:59 +02:00
Mike de Boer
d16ee58ded Bug 1034036 - Part 1: Merge RecentWindow.jsm and UpdateTopLevelContentWindowIDHelper.jsm into one module called 'BrowserWindowTracker.jsm'. r=dao
MozReview-Commit-ID: 9qzq1aGvjDu

--HG--
rename : browser/modules/UpdateTopLevelContentWindowIDHelper.jsm => browser/modules/BrowserWindowTracker.jsm
extra : rebase_source : 9c4a728e13fd691d377e7f221c5632646115daca
2018-04-11 12:05:56 +02:00
Jonathan Kingston
ff73ac0338 Bug 1374741 - Within browser/ make openUILinkIn() provide the correct triggeringPrincipal. r=gijs
MozReview-Commit-ID: 1NQrlWzIBja

--HG--
extra : rebase_source : 29d337e111d82e9c5729b5a59e1a16d06e67774c
2018-02-21 14:28:48 +00:00
Andreea Pavel
26f640b36b Backed out 4 changesets (bug 1366808) for Windows GPU leakchecks on a CLOSED TREE
Backed out changeset 23f60e5acaa2 (bug 1366808)
Backed out changeset bf2262b6aca8 (bug 1366808)
Backed out changeset 1fc82af3a155 (bug 1366808)
Backed out changeset 0649f0d9884b (bug 1366808)
2018-04-10 05:11:36 +03:00
Stephen A Pohl
3dc231c02e Bug 1366808: Fix Eslint failures on inbound. CLOSED TREE r=me 2018-04-09 21:08:48 -04:00
Stephen A Pohl
73071eec8f Bug 1366808: Add telemetry probe for about:restartrequired page. r=jimm 2018-04-09 20:16:38 -04:00
Stephen A Pohl
b40a23754c Bug 1366808: Properly detect buildID mismatches between parent and child processes and display about:restartrequired to prompt the user to restart Firefox before proceeding. r=jimm,felipe,bz 2018-04-09 20:16:31 -04:00
Boris Zbarsky
bf1ef0641d Bug 1444143 part 10. Remove unnecessary QIs to Ci.nsIFrameLoader in JS. r=mystor
nsFrameLoader is on WebIDL bindings, so those QIs are no-ops anyway, unless the given object is no a frameloader to start with.

MozReview-Commit-ID: IPiW70H5NPc
2018-03-21 22:43:17 -04:00
Peter Van der Beken
f5754d679a Bug 888600 - Move ContentFrameMessageManager to WebIDL. Part 6: Mark some IDL interfaces as non-scriptable. r=bz.
--HG--
extra : rebase_source : 5911f91bd7a63cd3603494e087e3858bd0527500
2018-03-01 20:19:56 +01:00
Sebastian Hengst
3a10644021 Backed out 6 changesets (bug 888600) for beta simulation failures: build bustage on Linux and Windows opt (bug 1442036) and devtools failure browser_net_view-source-debugger.js (bug 1441961). a=backout
Backed out changeset 83c87140dc3d (bug 888600)
Backed out changeset 2efb9b1753f6 (bug 888600)
Backed out changeset af5303781961 (bug 888600)
Backed out changeset 79ef59047e63 (bug 888600)
Backed out changeset 30d568d628dd (bug 888600)
Backed out changeset c7bd4c6c9741 (bug 888600)

--HG--
extra : histedit_source : 791b22f6770f4fead2f909478a93d65d85829fe0%2Cbb387309e90f53e1dde45dcf8cf4ebedcc6e5c5e
2018-03-01 11:51:09 +02:00
Peter Van der Beken
6cf0e1c871 Bug 888600 - Move ContentFrameMessageManager to WebIDL. Part 6: Mark some IDL interfaces as non-scriptable. r=bz.
--HG--
extra : rebase_source : f6f781b04923f67f60718706a78b3c4de15eca94
2018-02-22 20:22:29 +01:00
Florian Quèze
682b1ec3b2 Bug 1440284 - change this.EXPORTED_SYMBOLS back to var EXPORTED_SYMBOLS in JS modules, r=mccr8. 2018-02-23 20:50:01 +01:00
Dorel Luca
9b2f91981c Backed out 6 changesets (bug 888600) for Valgrind and build bustge on a CLOSED TREE
Backed out changeset 7c8317f4ad48 (bug 888600)
Backed out changeset 5b990735f1ad (bug 888600)
Backed out changeset 9eafe225b804 (bug 888600)
Backed out changeset 16af80d6cd93 (bug 888600)
Backed out changeset a109987af625 (bug 888600)
Backed out changeset 0949dba396ad (bug 888600)
2018-02-22 13:56:43 +02:00
Peter Van der Beken
ab910ec03f Bug 888600 - Move ContentFrameMessageManager to WebIDL. Part 6: Mark some IDL interfaces as non-scriptable. r=bz.
--HG--
extra : rebase_source : 05d1b150ffa84931ace6dbd66385d1d014a03afe
2017-11-23 16:27:27 +01:00
Andrew McCreight
5dec0e0beb Bug 1432992, part 1 - Remove definitions of Ci, Cr, Cc, and Cu. r=florian
This patch was autogenerated by my decomponents.py

It covers almost every file with the extension js, jsm, html, py,
xhtml, or xul.

It removes blank lines after removed lines, when the removed lines are
preceded by either blank lines or the start of a new block. The "start
of a new block" is defined fairly hackily: either the line starts with
//, ends with */, ends with {, <![CDATA[, """ or '''. The first two
cover comments, the third one covers JS, the fourth covers JS embedded
in XUL, and the final two cover JS embedded in Python. This also
applies if the removed line was the first line of the file.

It covers the pattern matching cases like "var {classes: Cc,
interfaces: Ci, utils: Cu, results: Cr} = Components;". It'll remove
the entire thing if they are all either Ci, Cr, Cc or Cu, or it will
remove the appropriate ones and leave the residue behind. If there's
only one behind, then it will turn it into a normal, non-pattern
matching variable definition. (For instance, "const { classes: Cc,
Constructor: CC, interfaces: Ci, utils: Cu } = Components" becomes
"const CC = Components.Constructor".)

MozReview-Commit-ID: DeSHcClQ7cG

--HG--
extra : rebase_source : d9c41878036c1ef7766ef5e91a7005025bc1d72b
2018-02-06 09:36:57 -08:00
Florian Quèze
2b1c8dccb6 Bug 1339461 - script-generated patch to convert foo.indexOf(...) == -1 to foo.includes(), r=Mossop. 2018-02-01 20:45:22 +01:00
Kris Maglione
918ed6c474 Bug 1431533: Part 5a - Auto-rewrite code to use ChromeUtils import methods. r=florian
This was done using the following script:
37e3803c7a/processors/chromeutils-import.jsm

MozReview-Commit-ID: 1Nc3XDu0wGl

--HG--
extra : source : 12fc4dee861c812fd2bd032c63ef17af61800c70
extra : intermediate-source : 34c999fa006bffe8705cf50c54708aa21a962e62
extra : histedit_source : b2be2c5e5d226e6c347312456a6ae339c1e634b0
2018-01-29 15:20:18 -08:00
Cosmin Sabou
9a65a40178 Backed out 3 changesets (bug 1431533) for Android mochitest failures on testEventDispatcher on a CLOSED TREE
Backed out changeset a1eca62826a1 (bug 1431533)
Backed out changeset 34c999fa006b (bug 1431533)
Backed out changeset e2674287e57f (bug 1431533)
2018-01-30 07:17:48 +02:00
Kris Maglione
6476f95b13 Bug 1431533: Part 5a - Auto-rewrite code to use ChromeUtils import methods. r=florian
This was done using the following script:
37e3803c7a/processors/chromeutils-import.jsm

MozReview-Commit-ID: 1Nc3XDu0wGl

--HG--
extra : source : 12fc4dee861c812fd2bd032c63ef17af61800c70
2018-01-29 15:20:18 -08:00
Brindusan Cristian
af8879d1eb Backed out 2 changesets (bug 1431533) for ESlint failures on a CLOSED TREE
Backed out changeset 6e56f4c8843e (bug 1431533)
Backed out changeset 12fc4dee861c (bug 1431533)
2018-01-30 02:32:43 +02:00
Kris Maglione
c276bb9375 Bug 1431533: Part 5a - Auto-rewrite code to use ChromeUtils import methods. r=florian
This was done using the following script:
37e3803c7a/processors/chromeutils-import.jsm

MozReview-Commit-ID: 1Nc3XDu0wGl

--HG--
extra : rebase_source : c004a023389f1f6bf3d2f3efe93c13d423b23ccd
2018-01-29 15:20:18 -08:00
Mike Conley
4d6ed7eb15 Bug 1424373 - Rename crash report submission pref. r=Mossop
--HG--
extra : rebase_source : 14cfcee27cefc13911aee2c0663c74f3e9101275
extra : amend_source : bb12f2b78b2c43ef79957d700167a2fea80d0188
2017-12-21 16:36:13 -05:00
Mike Conley
b27c33fa9d Bug 1424373 - Don't set crash reporting prefs when showing about:tabcrashed for a crash without a report. r=Mossop
--HG--
extra : rebase_source : 3330154807a268c5cc85bfbf19c64f3a790d4aee
2017-12-18 11:19:53 -05:00
Mike Conley
dd33d08c01 Bug 1407631 - Wait about 10 minutes after browser session start before scanning for unsubmitted crash reports. r=gsvelto
While the crash reporter client is submitting a crash report, the report itself
stays in the crashes directory. We suspect that in some cases, if the browser starts
up while the crash reporter client is still sending the report, the unsubmitted
crash report handler will also attempt to send the same report.

This patch makes the unsubmitted crash report handler wait approximately 10 minutes
after the session starts before doing the unsubmitted crash report scan.

MozReview-Commit-ID: KkrPDa1Qwv1

--HG--
extra : rebase_source : cafecef5776a21a76c64300eb53fdde28e09d18b
2017-10-24 16:55:24 -04:00
Dan Banner
7caa92d5d8 Bug 1408777 - Automatically fix instances of missing semicolons in the tree. r=Standard8
MozReview-Commit-ID: Jm8BRgt6mIv
2017-10-15 20:50:39 +01:00
Mike Conley
2e651bf46f Bug 1399796 - UnsubmittedCrashHandler should never check for unsubmitted crash reports if disabled or suppressed. r=Felipe
Bug 1355492 moved the logic for scanning for unsubmitted crash reports out of the initialization
of UnsubmittedCrashHandler, and the initialization is what decided whether or not it was
appropriate to scan in the first place. This was done so that scanning could be deferred
until idle after first paint.

This patch makes it so that the scanning logic first ensures that the UnsubmittedCrashHandler
is actually enabled and not suppressed (which is calculated earlier).

I've also taken the liberty of adding a regression test.

MozReview-Commit-ID: 3Aihom5Q17R

--HG--
extra : rebase_source : 0430dc2464acfd7b648ba9d4658ab3fb01606570
extra : source : 593ef0951840f01384def383c2690cc90767a118
2017-09-15 09:25:04 -07:00
Sebastian Hengst
a772602f0e Backed out changeset 1256cadba71b (bug 1399796) for eslint failure at browser/modules/ContentCrashHandlers.jsm:675: Async method 'checkForUnsubmittedCrashReports' expected no return value. r=backout 2017-09-15 19:31:36 +02:00
Mike Conley
44acce0c1a Bug 1399796 - UnsubmittedCrashHandler should never check for unsubmitted crash reports if disabled or suppressed. r=Felipe
Bug 1355492 moved the logic for scanning for unsubmitted crash reports out of the initialization
of UnsubmittedCrashHandler, and the initialization is what decided whether or not it was
appropriate to scan in the first place. This was done so that scanning could be deferred
until idle after first paint.

This patch makes it so that the scanning logic first ensures that the UnsubmittedCrashHandler
is actually enabled and not suppressed (which is calculated earlier).

I've also taken the liberty of adding a regression test.

MozReview-Commit-ID: 3Aihom5Q17R

--HG--
extra : rebase_source : 2284ae29bc9c7eb9e457086adcd78b70dabb61fa
extra : source : 593ef0951840f01384def383c2690cc90767a118
2017-09-15 09:25:04 -07:00
Gabriele Svelto
7a192b0fc6 Bug 1376795 - Print a message when quitting in response to a content crash; r=cyu
MozReview-Commit-ID: HluXiBtux23

--HG--
extra : rebase_source : 16c168c048ee14db93d4df66c6dfa761952c3577
2017-08-16 11:22:04 +02:00
Rajesh Kathiriya
48e6bc2124 Bug 1374620 - Enabled the ESLint dot-notation rule across mozilla-central r=standard8
MozReview-Commit-ID: FadrI2li43G

--HG--
extra : rebase_source : b455e846ab79c8141150517e67e542e3e06d630e
2017-07-25 23:45:41 +05:30
Sebastian Hengst
804a36e668 Backed out changeset f5922a7ed25a (bug 1374620) for failing eslint at telemetry/tests/unit/test_TelemetrySend.js:358: ["os"] is better written in dot notation. r=backout 2017-07-31 14:44:34 +02:00
Rajesh Kathiriya
22dfa54ef4 Bug 1374620 - Enabled the ESLint dot-notation rule across mozilla-central r=standard8
MozReview-Commit-ID: FadrI2li43G

--HG--
extra : rebase_source : 5992bdde34bcc2421350433bc8c1e498a6bba848
2017-07-25 23:45:41 +05:30
Mike Conley
63848b9f96 Bug 1378036 - TabCrashHandler should key browsers to dumpIDs on permanentKeys, and fallback to the browser itself if no permanentKey exists. r=Felipe
MozReview-Commit-ID: 45JRjPIAFE8

--HG--
extra : rebase_source : 7d1c6b0385744abe3d26da5d7ed4df3fc313fede
2017-07-17 18:27:16 -04:00
Florian Quèze
fc2fb801f0 Bug 1355492 - initialize ContentCrashHandlers.jsm after first paint, r=mconley. 2017-07-15 00:16:31 +02:00