Bug 1363671 - Making the window attribute 'iconLoadingPrincipal' been set before than window attributes 'image' during favicon loading. r?ckerschb
Setting window attribute 'iconLoadingPrincipal' before window attribute 'image'
which allows using the right principal for favicon loads and prevents
intermittent timing issues.
MozReview-Commit-ID: J4GM6CMG26O
--- a/browser/base/content/tabbrowser.xml
+++ b/browser/base/content/tabbrowser.xml
@@ -905,27 +905,27 @@
aURI = makeURI(aURI);
}
PlacesUIUtils.loadFavicon(browser, loadingPrincipal, aURI);
}
let sizedIconUrl = browser.mIconURL || "";
if (sizedIconUrl != aTab.getAttribute("image")) {
if (sizedIconUrl) {
- aTab.setAttribute("image", sizedIconUrl);
if (!browser.mIconLoadingPrincipal ||
!browser.mIconLoadingPrincipal.equals(loadingPrincipal)) {
aTab.setAttribute("iconLoadingPrincipal",
this.serializationHelper.serializeToString(loadingPrincipal));
browser.mIconLoadingPrincipal = loadingPrincipal;
}
+ aTab.setAttribute("image", sizedIconUrl);
} else {
- aTab.removeAttribute("image");
aTab.removeAttribute("iconLoadingPrincipal");
delete browser.mIconLoadingPrincipal;
+ aTab.removeAttribute("image");
}
this._tabAttrModified(aTab, ["image"]);
}
this._callProgressListeners(browser, "onLinkIconAvailable", [browser.mIconURL]);
]]>
</body>
</method>