зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1519918 - Make nsFontFaceLoader::mFontFaceSet a weak reference. r=heycam
And start tracking the loader ASAP to be on the safe side. Both sides already take care of cleaning up pointers on destruction. Differential Revision: https://phabricator.services.mozilla.com/D16514 --HG-- extra : moz-landing-system : lando
This commit is contained in:
Родитель
5ef86a8143
Коммит
45336846a9
|
@ -581,6 +581,7 @@ nsresult FontFaceSet::StartLoad(gfxUserFontEntry* aUserFontEntry,
|
|||
|
||||
RefPtr<nsFontFaceLoader> fontLoader = new nsFontFaceLoader(
|
||||
aUserFontEntry, aFontFaceSrc->mURI->get(), this, channel);
|
||||
mLoaders.PutEntry(fontLoader);
|
||||
|
||||
if (LOG_ENABLED()) {
|
||||
LOG(
|
||||
|
@ -638,7 +639,6 @@ nsresult FontFaceSet::StartLoad(gfxUserFontEntry* aUserFontEntry,
|
|||
}
|
||||
|
||||
if (NS_SUCCEEDED(rv)) {
|
||||
mLoaders.PutEntry(fontLoader);
|
||||
fontLoader->StartedLoading(streamLoader);
|
||||
// let the font entry remember the loader, in case we need to cancel it
|
||||
aUserFontEntry->SetLoader(fontLoader);
|
||||
|
|
|
@ -55,7 +55,8 @@ class nsFontFaceLoader final : public nsIStreamLoaderObserver,
|
|||
private:
|
||||
RefPtr<gfxUserFontEntry> mUserFontEntry;
|
||||
nsCOMPtr<nsIURI> mFontURI;
|
||||
RefPtr<mozilla::dom::FontFaceSet> mFontFaceSet;
|
||||
// Cleared in FontFaceSet::~FontFaceSet, and on cancelation and such too.
|
||||
mozilla::dom::FontFaceSet* MOZ_NON_OWNING_REF mFontFaceSet;
|
||||
nsCOMPtr<nsIChannel> mChannel;
|
||||
nsCOMPtr<nsITimer> mLoadTimer;
|
||||
mozilla::TimeStamp mStartTime;
|
||||
|
|
Загрузка…
Ссылка в новой задаче