Bug 1290276 Part 1 - Make LoadResources() return bool directly.
MozReview-Commit-ID: 4z3cHiWXMAh
--- a/dom/xbl/nsXBLPrototypeBinding.cpp
+++ b/dom/xbl/nsXBLPrototypeBinding.cpp
@@ -228,19 +228,17 @@ nsXBLPrototypeBinding::GetAllowScripts()
{
return mXBLDocInfoWeak->GetScriptAccess();
}
bool
nsXBLPrototypeBinding::LoadResources()
{
if (mResources) {
- bool result;
- mResources->LoadResources(&result);
- return result;
+ return mResources->LoadResources();
}
return true;
}
nsresult
nsXBLPrototypeBinding::AddResource(nsIAtom* aResourceType, const nsAString& aSrc)
{
--- a/dom/xbl/nsXBLPrototypeResources.cpp
+++ b/dom/xbl/nsXBLPrototypeResources.cpp
@@ -42,23 +42,24 @@ nsXBLPrototypeResources::~nsXBLPrototype
void
nsXBLPrototypeResources::AddResource(nsIAtom* aResourceType, const nsAString& aSrc)
{
if (mLoader)
mLoader->AddResource(aResourceType, aSrc);
}
-void
-nsXBLPrototypeResources::LoadResources(bool* aResult)
+bool
+nsXBLPrototypeResources::LoadResources()
{
- if (mLoader)
- mLoader->LoadResources(aResult);
- else
- *aResult = true; // All resources loaded.
+ if (mLoader) {
+ return mLoader->LoadResources();
+ }
+
+ return true; // All resources loaded.
}
void
nsXBLPrototypeResources::AddResourceListener(nsIContent* aBoundElement)
{
if (mLoader)
mLoader->AddResourceListener(aBoundElement);
}
--- a/dom/xbl/nsXBLPrototypeResources.h
+++ b/dom/xbl/nsXBLPrototypeResources.h
@@ -24,17 +24,17 @@ class CSSStyleSheet;
// The XBLPrototypeResources class
class nsXBLPrototypeResources
{
public:
explicit nsXBLPrototypeResources(nsXBLPrototypeBinding* aBinding);
~nsXBLPrototypeResources();
- void LoadResources(bool* aResult);
+ bool LoadResources();
void AddResource(nsIAtom* aResourceType, const nsAString& aSrc);
void AddResourceListener(nsIContent* aElement);
nsresult FlushSkinSheets();
nsresult Write(nsIObjectOutputStream* aStream);
void Traverse(nsCycleCollectionTraversalCallback &cb);
void Unlink();
--- a/dom/xbl/nsXBLResourceLoader.cpp
+++ b/dom/xbl/nsXBLResourceLoader.cpp
@@ -76,29 +76,27 @@ nsXBLResourceLoader::nsXBLResourceLoader
{
}
nsXBLResourceLoader::~nsXBLResourceLoader()
{
delete mResourceList;
}
-void
-nsXBLResourceLoader::LoadResources(bool* aResult)
+bool
+nsXBLResourceLoader::LoadResources()
{
mInLoadResourcesFunc = true;
if (mLoadingResources) {
- *aResult = (mPendingSheets == 0);
mInLoadResourcesFunc = false;
- return;
+ return mPendingSheets == 0;
}
mLoadingResources = true;
- *aResult = true;
// Declare our loaders.
nsCOMPtr<nsIDocument> doc = mBinding->XBLDocumentInfo()->GetDocument();
mozilla::css::Loader* cssLoader = doc->CSSLoader();
nsIURI *docURL = doc->GetDocumentURI();
nsIPrincipal* docPrincipal = doc->NodePrincipal();
@@ -149,22 +147,23 @@ nsXBLResourceLoader::LoadResources(bool*
{
rv = cssLoader->LoadSheet(url, false, docPrincipal, EmptyCString(), this);
if (NS_SUCCEEDED(rv))
++mPendingSheets;
}
}
}
- *aResult = (mPendingSheets == 0);
mInLoadResourcesFunc = false;
// Destroy our resource list.
delete mResourceList;
mResourceList = nullptr;
+
+ return mPendingSheets == 0;
}
// nsICSSLoaderObserver
NS_IMETHODIMP
nsXBLResourceLoader::StyleSheetLoaded(StyleSheet* aSheet,
bool aWasAlternate,
nsresult aStatus)
{
--- a/dom/xbl/nsXBLResourceLoader.h
+++ b/dom/xbl/nsXBLResourceLoader.h
@@ -29,17 +29,17 @@ public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
NS_DECL_CYCLE_COLLECTION_CLASS(nsXBLResourceLoader)
// nsICSSLoaderObserver
NS_IMETHOD StyleSheetLoaded(mozilla::StyleSheet* aSheet,
bool aWasAlternate,
nsresult aStatus) override;
- void LoadResources(bool* aResult);
+ bool LoadResources();
void AddResource(nsIAtom* aResourceType, const nsAString& aSrc);
void AddResourceListener(nsIContent* aElement);
nsXBLResourceLoader(nsXBLPrototypeBinding* aBinding,
nsXBLPrototypeResources* aResources);
void NotifyBoundElements();