Changeset 236895 in webkit for trunk/Source/WebCore/css/CSSVariableData.cpp
- Timestamp:
- Oct 6, 2018, 6:57:16 AM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/css/CSSVariableData.cpp
r236828 r236895 33 33 #include "CSSCustomPropertyValue.h" 34 34 #include "CSSParserTokenRange.h" 35 #include "CSSTokenizer.h"36 35 #include "CSSValuePool.h" 37 36 #include "RenderStyle.h" … … 82 81 : m_needsVariableResolution(needsVariableResolution) 83 82 { 84 ASSERT(!range.atEnd());85 83 consumeAndUpdateTokens(range); 86 84 } … … 147 145 auto* property = style.getCustomProperty(variableName); 148 146 if (property && property->resolvedTypedValue()) { 149 // FIXME: we should not have to serialize a value that was already resolved. 150 auto textValue = CSSValuePool::singleton().createValue(*property->resolvedTypedValue(), style)->cssText(); 151 CSSTokenizer tokenizer(textValue); 152 auto tokenizerRange = tokenizer.tokenRange(); 153 while (!tokenizerRange.atEnd()) 154 result.append(tokenizerRange.consume()); 147 result.appendVector(property->tokens(registeredProperties, style)); 155 148 return true; 156 149 } … … 164 157 } 165 158 ASSERT(property); 166 167 if (property->containsVariables()) { 168 // FIXME: Avoid doing this work more than once. 169 RefPtr<CSSVariableData> resolvedData = property->value()->resolveVariableReferences(registeredProperties, style); 170 if (!resolvedData) 171 return false; 172 result.appendVector(resolvedData->tokens()); 173 } else 174 result.appendVector(property->value()->tokens()); 159 result.appendVector(property->tokens(registeredProperties, style)); 175 160 176 161 return true;
Note:
See TracChangeset
for help on using the changeset viewer.