Bug 1570147 - Use a Set for HiddenFrame.jsm, so that GC can't clean up frames that we're sitll waiting on. r=kmag
authorMatt Woodrow <mwoodrow@mozilla.com>
Fri, 16 Aug 2019 03:23:28 +0000
changeset 488425 11919743f599ec393c72c61ee7e18ed52b56e435
parent 488424 db86b932e8991caf212e135e69d559104925bae1
child 488426 37aaf28a693732407ded4ab9e7e153bc680f02a6
push id36443
push userccoroiu@mozilla.com
push dateFri, 16 Aug 2019 09:48:15 +0000
treeherdermozilla-central@5d4cbfe103bb [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewerskmag
bugs1570147
milestone70.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1570147 - Use a Set for HiddenFrame.jsm, so that GC can't clean up frames that we're sitll waiting on. r=kmag Differential Revision: https://phabricator.services.mozilla.com/D42253
toolkit/modules/HiddenFrame.jsm
--- a/toolkit/modules/HiddenFrame.jsm
+++ b/toolkit/modules/HiddenFrame.jsm
@@ -8,17 +8,17 @@ var EXPORTED_SYMBOLS = ["HiddenFrame"];
 
 const { PromiseUtils } = ChromeUtils.import(
   "resource://gre/modules/PromiseUtils.jsm"
 );
 const { Services } = ChromeUtils.import("resource://gre/modules/Services.jsm");
 
 const XUL_PAGE = "chrome://global/content/win.xul";
 
-const gAllHiddenFrames = new WeakSet();
+const gAllHiddenFrames = new Set();
 
 let cleanupRegistered = false;
 function ensureCleanupRegistered() {
   if (!cleanupRegistered) {
     cleanupRegistered = true;
     Services.obs.addObserver(function() {
       for (let hiddenFrame of ChromeUtils.nondeterministicGetWeakSetKeys(
         gAllHiddenFrames