diff --git a/mozilla/content/html/style/src/nsCSSLoader.cpp b/mozilla/content/html/style/src/nsCSSLoader.cpp index 75d17490bb5..b242f2e924d 100644 --- a/mozilla/content/html/style/src/nsCSSLoader.cpp +++ b/mozilla/content/html/style/src/nsCSSLoader.cpp @@ -1355,8 +1355,14 @@ CSSLoaderImpl::LoadAgentSheet(nsIURI* aURL, else { NS_ADDREF(data); URLKey key(aURL); - mLoadingSheets.Put(&key, data); - result = ParseSheet(uin, data, aCompleted, aSheet); + if (aObserver == nsnull) { + mLoadingSheets.Put(&key, data); + result = ParseSheet(uin, data, aCompleted, aSheet); + } + else { + result = LoadSheet(key, data); // this may steal pending alternates too + aCompleted = PR_FALSE; + } } NS_RELEASE(uin); } diff --git a/mozilla/layout/html/style/src/nsCSSLoader.cpp b/mozilla/layout/html/style/src/nsCSSLoader.cpp index 75d17490bb5..b242f2e924d 100644 --- a/mozilla/layout/html/style/src/nsCSSLoader.cpp +++ b/mozilla/layout/html/style/src/nsCSSLoader.cpp @@ -1355,8 +1355,14 @@ CSSLoaderImpl::LoadAgentSheet(nsIURI* aURL, else { NS_ADDREF(data); URLKey key(aURL); - mLoadingSheets.Put(&key, data); - result = ParseSheet(uin, data, aCompleted, aSheet); + if (aObserver == nsnull) { + mLoadingSheets.Put(&key, data); + result = ParseSheet(uin, data, aCompleted, aSheet); + } + else { + result = LoadSheet(key, data); // this may steal pending alternates too + aCompleted = PR_FALSE; + } } NS_RELEASE(uin); } diff --git a/mozilla/layout/style/nsCSSLoader.cpp b/mozilla/layout/style/nsCSSLoader.cpp index 75d17490bb5..b242f2e924d 100644 --- a/mozilla/layout/style/nsCSSLoader.cpp +++ b/mozilla/layout/style/nsCSSLoader.cpp @@ -1355,8 +1355,14 @@ CSSLoaderImpl::LoadAgentSheet(nsIURI* aURL, else { NS_ADDREF(data); URLKey key(aURL); - mLoadingSheets.Put(&key, data); - result = ParseSheet(uin, data, aCompleted, aSheet); + if (aObserver == nsnull) { + mLoadingSheets.Put(&key, data); + result = ParseSheet(uin, data, aCompleted, aSheet); + } + else { + result = LoadSheet(key, data); // this may steal pending alternates too + aCompleted = PR_FALSE; + } } NS_RELEASE(uin); }