Chromium Code Reviews| Index: Source/core/dom/Element.cpp |
| diff --git a/Source/core/dom/Element.cpp b/Source/core/dom/Element.cpp |
| index 18d1114960311ee8d36d1d9f9980865c25693a32..dc0f28ff831fc3b992b1f6571bc71af4b2fc6b0b 100644 |
| --- a/Source/core/dom/Element.cpp |
| +++ b/Source/core/dom/Element.cpp |
| @@ -1087,18 +1087,20 @@ void Element::classAttributeChanged(const AtomicString& newClassString) |
| StyleResolver* styleResolver = document().styleResolver(); |
| bool testShouldInvalidateStyle = inActiveDocument() && styleResolver && styleChangeType() < SubtreeStyleChange; |
| - if (classStringHasClassName(newClassString)) { |
| - const bool shouldFoldCase = document().inQuirksMode(); |
| - const SpaceSplitString oldClasses = elementData()->classNames(); |
| - elementData()->setClass(newClassString, shouldFoldCase); |
| - const SpaceSplitString& newClasses = elementData()->classNames(); |
| - if (testShouldInvalidateStyle) |
| - styleResolver->ensureRuleFeatureSet().scheduleStyleInvalidationForClassChange(oldClasses, newClasses, this); |
| - } else { |
| - const SpaceSplitString& oldClasses = elementData()->classNames(); |
| - if (testShouldInvalidateStyle) |
| - styleResolver->ensureRuleFeatureSet().scheduleStyleInvalidationForClassChange(oldClasses, this); |
| - elementData()->clearClass(); |
| + if (elementData()) { |
|
adamk
2014/02/21 03:33:50
This is crazy. No element should have classAttribu
|
| + if (classStringHasClassName(newClassString)) { |
| + const bool shouldFoldCase = document().inQuirksMode(); |
| + const SpaceSplitString oldClasses = elementData()->classNames(); |
| + elementData()->setClass(newClassString, shouldFoldCase); |
| + const SpaceSplitString& newClasses = elementData()->classNames(); |
| + if (testShouldInvalidateStyle) |
| + styleResolver->ensureRuleFeatureSet().scheduleStyleInvalidationForClassChange(oldClasses, newClasses, this); |
| + } else { |
| + const SpaceSplitString& oldClasses = elementData()->classNames(); |
| + if (testShouldInvalidateStyle) |
| + styleResolver->ensureRuleFeatureSet().scheduleStyleInvalidationForClassChange(oldClasses, this); |
| + elementData()->clearClass(); |
| + } |
| } |
| if (hasRareData()) |