Bug 1047928 patch 4a - Explain why we need to rerun selector matching for preference changes. r=bzbarsky
--- a/layout/base/nsPresContext.cpp
+++ b/layout/base/nsPresContext.cpp
@@ -940,16 +940,18 @@ nsPresContext::UpdateAfterPreferencesCha
mDeviceContext->FlushFontCache();
nsChangeHint hint = nsChangeHint(0);
if (mPrefChangePendingNeedsReflow) {
NS_UpdateHint(hint, NS_STYLE_HINT_REFLOW);
}
+ // Preferences require rerunning selector matching because we rebuild
+ // the pref style sheet for some preference changes.
RebuildAllStyleData(hint, eRestyle_Subtree);
}
nsresult
nsPresContext::Init(nsDeviceContext* aDeviceContext)
{
NS_ASSERTION(!mInitialized, "attempt to reinit pres context");
NS_ENSURE_ARG(aDeviceContext);