From 157f218c8d9f026eb530bb87cb23c2b81fd42a54 Mon Sep 17 00:00:00 2001 From: athenian200 Date: Sun, 6 Sep 2020 13:51:08 -0500 Subject: Issue #1629 - Part 4: Ensure isExplicitlyEnabled is false upon sheet creation. This clarifies the assumptions the code is making and the order in which the variables pass through the loading process. The new variable is set after the sheet is created and prepared, and is assumed to be false in the beginning. --- layout/style/Loader.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'layout') diff --git a/layout/style/Loader.cpp b/layout/style/Loader.cpp index df523174d..1038ff53f 100644 --- a/layout/style/Loader.cpp +++ b/layout/style/Loader.cpp @@ -2272,7 +2272,8 @@ Loader::LoadChildSheet(StyleSheet* aParentSheet, state = eSheetComplete; } else { bool isAlternate; - bool isExplicitlyEnabled; + // For now, child sheets are not explicitly enabled. + bool isExplicitlyEnabled = false; const nsSubstring& empty = EmptyString(); // For now, use CORS_NONE for child sheets rv = CreateSheet(aURL, nullptr, principal, @@ -2396,7 +2397,9 @@ Loader::InternalLoadNonDocumentSheet(nsIURI* aURL, StyleSheetState state; bool isAlternate; - bool isExplicitlyEnabled; + // Sheets can only be explicitly enabled after creation and preparation, so + // set isExplicitlyEnabled to false. + bool isExplicitlyEnabled = false; RefPtr sheet; bool syncLoad = (aObserver == nullptr); const nsSubstring& empty = EmptyString(); -- cgit v1.2.3