Bug 1457920: Cleanup a useless argument in Loader. r?xidorn
MozReview-Commit-ID: HajaHl6JEV8
--- a/layout/style/Loader.cpp
+++ b/layout/style/Loader.cpp
@@ -1636,43 +1636,43 @@ Loader::LoadSheet(SheetLoadData* aLoadDa
nsresult
Loader::ParseSheet(const nsAString& aUTF16,
const nsACString& aUTF8,
SheetLoadData* aLoadData,
bool aAllowAsync,
bool& aCompleted)
{
LOG(("css::Loader::ParseSheet"));
- NS_PRECONDITION(aLoadData, "Must have load data");
- NS_PRECONDITION(aLoadData->mSheet, "Must have sheet to parse into");
+ MOZ_ASSERT(aLoadData, "Must have load data");
+ MOZ_ASSERT(aLoadData->mSheet, "Must have sheet to parse into");
aCompleted = false;
- StyleSheet* sheet = aLoadData->mSheet;
MOZ_ASSERT(aUTF16.IsEmpty() || aUTF8.IsEmpty());
if (!aUTF16.IsEmpty()) {
- return DoParseSheetServo(sheet, NS_ConvertUTF16toUTF8(aUTF16),
+ return DoParseSheetServo(NS_ConvertUTF16toUTF8(aUTF16),
aLoadData, aAllowAsync, aCompleted);
} else {
- return DoParseSheetServo(sheet, aUTF8,
- aLoadData, aAllowAsync, aCompleted);
+ return DoParseSheetServo(aUTF8, aLoadData, aAllowAsync, aCompleted);
}
}
nsresult
-Loader::DoParseSheetServo(StyleSheet* aSheet,
- const nsACString& aBytes,
+Loader::DoParseSheetServo(const nsACString& aBytes,
SheetLoadData* aLoadData,
bool aAllowAsync,
bool& aCompleted)
{
aLoadData->mIsBeingParsed = true;
+ StyleSheet* sheet = aLoadData->mSheet;
+ MOZ_ASSERT(sheet);
+
// Some cases, like inline style and UA stylesheets, need to be parsed
// synchronously. The former may trigger child loads, the latter must not.
if (aLoadData->mSyncLoad || !aAllowAsync) {
- aSheet->ParseSheetSync(this, aBytes, aLoadData, aLoadData->mLineNumber);
+ sheet->ParseSheetSync(this, aBytes, aLoadData, aLoadData->mLineNumber);
aLoadData->mIsBeingParsed = false;
bool noPendingChildren = aLoadData->mPendingChildren == 0;
MOZ_ASSERT_IF(aLoadData->mSyncLoad, noPendingChildren);
if (noPendingChildren) {
aCompleted = true;
SheetComplete(aLoadData, NS_OK);
}
@@ -1682,17 +1682,17 @@ Loader::DoParseSheetServo(StyleSheet* aS
// This parse does not need to be synchronous. \o/
//
// Note that we need to block onload because there may be no network requests
// pending.
BlockOnload();
RefPtr<SheetLoadData> loadData = aLoadData;
nsCOMPtr<nsISerialEventTarget> target = DispatchTarget();
- aSheet->ParseSheet(this, aBytes, aLoadData)->Then(target, __func__,
+ sheet->ParseSheet(this, aBytes, aLoadData)->Then(target, __func__,
[loadData = Move(loadData)](bool aDummy) {
MOZ_ASSERT(NS_IsMainThread());
loadData->mIsBeingParsed = false;
loadData->mLoader->UnblockOnload(/* aFireSync = */ false);
// If there are no child sheets outstanding, mark us as complete.
// Otherwise, the children are holding strong refs to the data and
// will call SheetComplete() on it when they complete.
if (loadData->mPendingChildren == 0) {
--- a/layout/style/Loader.h
+++ b/layout/style/Loader.h
@@ -572,18 +572,17 @@ private:
// sheet had an @import). If aCompleted is true when this returns, then
// ParseSheet also called SheetComplete on aLoadData.
nsresult ParseSheet(const nsAString& aUTF16,
const nsACString& aUTF8,
SheetLoadData* aLoadData,
bool aAllowAsync,
bool& aCompleted);
- nsresult DoParseSheetServo(StyleSheet* aSheet,
- const nsACString& aBytes,
+ nsresult DoParseSheetServo(const nsACString& aBytes,
SheetLoadData* aLoadData,
bool aAllowAsync,
bool& aCompleted);
// The load of the sheet in aLoadData is done, one way or another. Do final
// cleanup, including releasing aLoadData.
void SheetComplete(SheetLoadData* aLoadData, nsresult aStatus);