| Index: third_party/WebKit/Source/core/html/HTMLLinkElement.cpp
|
| diff --git a/third_party/WebKit/Source/core/html/HTMLLinkElement.cpp b/third_party/WebKit/Source/core/html/HTMLLinkElement.cpp
|
| index 41f52b25d9b9dea4a12ca5c594dfc44a443dea96..eba8125c3c599b64990771d178a5689e7d0130ca 100644
|
| --- a/third_party/WebKit/Source/core/html/HTMLLinkElement.cpp
|
| +++ b/third_party/WebKit/Source/core/html/HTMLLinkElement.cpp
|
| @@ -440,8 +440,13 @@ enum StyleSheetCacheStatus {
|
|
|
| void LinkStyle::setCSSStyleSheet(const String& href, const KURL& baseURL, const String& charset, const CSSStyleSheetResource* cachedStyleSheet)
|
| {
|
| - if (!m_owner->isConnected()) {
|
| - ASSERT(!m_sheet);
|
| + if (!m_owner->isInDocumentTree()) {
|
| + // While the stylesheet is asynchronously loading, the owner can be moved out of a document tree.
|
| + // In that case, cancel any processing on the loaded content.
|
| + m_loading = false;
|
| + removePendingSheet();
|
| + if (m_sheet)
|
| + clearSheet();
|
| return;
|
| }
|
|
|
| @@ -453,15 +458,6 @@ void LinkStyle::setCSSStyleSheet(const String& href, const KURL& baseURL, const
|
| notifyLoadedSheetAndAllCriticalSubresources(Node::ErrorOccurredLoadingSubresource);
|
| return;
|
| }
|
| - // While the stylesheet is asynchronously loading, the owner can be moved under
|
| - // shadow tree. In that case, cancel any processing on the loaded content.
|
| - if (m_owner->isInShadowTree()) {
|
| - m_loading = false;
|
| - removePendingSheet();
|
| - if (m_sheet)
|
| - clearSheet();
|
| - return;
|
| - }
|
|
|
| CSSParserContext parserContext(m_owner->document(), nullptr, baseURL, charset);
|
|
|
|
|