gecko-dev/remote
Kris Maglione c01ad83372 Bug 1571502: Don't leak TabGroups which have never had windows joined to them. r=nika
Currently, TabGroups know to break their reference cycles only when the last
window leaves them. For TabGroups which have never had a window join (which
happens under Fission), this means they also never see a window leave, and
therefore never break their reference cycles, and leak.

This patch adds a check to break reference cycles if no windows have joined by
the time a BrowserChild they belong to is destroyed.

MANUAL PUSH: Lando fails to rebase.

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

--HG--
extra : source : 03acb28ab60fb77fa06064385a62cc46cf4ad1bd
extra : amend_source : 0a71625d99951bebe45ee6f62570de491a714e97
2019-08-02 18:19:53 -07:00
..
doc
domains
pref
server
sessions
targets
test Bug 1571502: Don't leak TabGroups which have never had windows joined to them. r=nika 2019-08-02 18:19:53 -07:00
Connection.jsm
Error.jsm
jar.mn
JSONHandler.jsm
Log.jsm
moz.build
Observer.jsm
Protocol.jsm
README
RecommendedPreferences.jsm
RemoteAgent.conf
RemoteAgent.jsm
Sync.jsm

The Firefox remote agent is a low-level debugging interface based
on the CDP protocol.

With it, you can inspect the state and control execution of documents
running in web content, instrument Gecko in interesting ways,
simulate user interaction for automation purposes, and debug
JavaScript execution.

This component provides an experimental and partial implementation
of a remote devtools interface using the CDP protocol and transport
layer.

See https://firefox-source-docs.mozilla.org/remote/ for documentation.

The remote agent is disabled by default, but can be enabled by
setting a preference before running it:

	% ./mach run --setpref "remote.enabled=true" --remote-debugger