Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(303)

Side by Side Diff: Source/WebCore/dom/Document.cpp

Issue 9212063: Merge 104845 - REGRESSION(r104060): Setting user stylesheet may leave CSSStyleSelector with stale... (Closed) Base URL: http://svn.webkit.org/repository/webkit/branches/chromium/963/
Patch Set: Created 8 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « LayoutTests/fast/css/user-stylesheet-crash-expected.txt ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
3 * (C) 1999 Antti Koivisto (koivisto@kde.org) 3 * (C) 1999 Antti Koivisto (koivisto@kde.org)
4 * (C) 2001 Dirk Mueller (mueller@kde.org) 4 * (C) 2001 Dirk Mueller (mueller@kde.org)
5 * (C) 2006 Alexey Proskuryakov (ap@webkit.org) 5 * (C) 2006 Alexey Proskuryakov (ap@webkit.org)
6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2011 Apple Inc. All rights reserved. 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2011 Apple Inc. All rights reserved.
7 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t orchmobile.com/) 7 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t orchmobile.com/)
8 * Copyright (C) 2008, 2009, 2011 Google Inc. All rights reserved. 8 * Copyright (C) 2008, 2009, 2011 Google Inc. All rights reserved.
9 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) 9 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies)
10 * 10 *
(...skipping 2940 matching lines...) Expand 10 before | Expand all | Expand 10 after
2951 parser->executeScriptsWaitingForStylesheets(); 2951 parser->executeScriptsWaitingForStylesheets();
2952 2952
2953 if (m_gotoAnchorNeededAfterStylesheetsLoad && view()) 2953 if (m_gotoAnchorNeededAfterStylesheetsLoad && view())
2954 view()->scrollToFragment(m_url); 2954 view()->scrollToFragment(m_url);
2955 } 2955 }
2956 2956
2957 void Document::styleSelectorChanged(StyleSelectorUpdateFlag updateFlag) 2957 void Document::styleSelectorChanged(StyleSelectorUpdateFlag updateFlag)
2958 { 2958 {
2959 // Don't bother updating, since we haven't loaded all our style info yet 2959 // Don't bother updating, since we haven't loaded all our style info yet
2960 // and haven't calculated the style selector for the first time. 2960 // and haven't calculated the style selector for the first time.
2961 if (!attached() || (!m_didCalculateStyleSelector && !haveStylesheetsLoaded() )) 2961 if (!attached() || (!m_didCalculateStyleSelector && !haveStylesheetsLoaded() )) {
2962 m_styleSelector.clear();
2962 return; 2963 return;
2964 }
2963 2965
2964 #ifdef INSTRUMENT_LAYOUT_SCHEDULING 2966 #ifdef INSTRUMENT_LAYOUT_SCHEDULING
2965 if (!ownerElement()) 2967 if (!ownerElement())
2966 printf("Beginning update of style selector at time %d.\n", elapsedTime() ); 2968 printf("Beginning update of style selector at time %d.\n", elapsedTime() );
2967 #endif 2969 #endif
2968 2970
2969 recalcStyleSelector(); 2971 recalcStyleSelector();
2970 2972
2971 if (updateFlag == DeferRecalcStyle) { 2973 if (updateFlag == DeferRecalcStyle) {
2972 scheduleForcedStyleRecalc(); 2974 scheduleForcedStyleRecalc();
(...skipping 2219 matching lines...) Expand 10 before | Expand all | Expand 10 after
5192 5194
5193 NodeListsNodeData* data = rareData()->nodeLists(); 5195 NodeListsNodeData* data = rareData()->nodeLists();
5194 5196
5195 String localTypeNames = typeNames.isNull() ? String("http://webkit.org/micro data/undefinedItemType") : typeNames; 5197 String localTypeNames = typeNames.isNull() ? String("http://webkit.org/micro data/undefinedItemType") : typeNames;
5196 ASSERT_UNUSED(list, list == data->m_microDataItemListCache.get(localTypeName s)); 5198 ASSERT_UNUSED(list, list == data->m_microDataItemListCache.get(localTypeName s));
5197 data->m_microDataItemListCache.remove(localTypeNames); 5199 data->m_microDataItemListCache.remove(localTypeNames);
5198 } 5200 }
5199 #endif 5201 #endif
5200 5202
5201 } // namespace WebCore 5203 } // namespace WebCore
OLDNEW
« no previous file with comments | « LayoutTests/fast/css/user-stylesheet-crash-expected.txt ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698