Bug 1382746 - Provide a helper function to remove the preloaded browser r=Mardak

MozReview-Commit-ID: 2PSIhwvKTKA

--HG--
extra : rebase_source : bc24f4c640ee5b8d5f8305f29fde7d56f103070e
This commit is contained in:
k88hudson 2017-07-20 14:32:39 -04:00
parent e4480eabc7
commit f4e4b2bc68
2 changed files with 18 additions and 7 deletions

View File

@ -1980,6 +1980,22 @@
</body>
</method>
<method name="removePreloadedBrowser">
<body>
<![CDATA[
if (!this._isPreloadingEnabled()) {
return;
}
let browser = this._getPreloadedBrowser();
if (browser) {
browser.remove();
}
]]>
</body>
</method>
<field name="_preloadedBrowser">null</field>
<method name="_getPreloadedBrowser">
<body>
@ -5694,9 +5710,7 @@
// Preloaded browsers do not actually have any tabs. If one crashes,
// it should be released and removed.
if (browser === this._preloadedBrowser) {
// Calling _getPreloadedBrowser is necessary to actually consume the preloaded browser
let preloaded = this._getPreloadedBrowser();
preloaded.remove();
this.removePreloadedBrowser();
return;
}

View File

@ -234,10 +234,7 @@ add_task(async function test_preload_crash() {
});
// Release any existing preloaded browser
let preloaded = gBrowser._getPreloadedBrowser();
if (preloaded) {
preloaded.remove();
}
gBrowser.removePreloadedBrowser();
// Create a fresh preloaded browser
gBrowser._createPreloadBrowser();