| Index: Source/core/css/CSSParser-in.cpp
|
| diff --git a/Source/core/css/CSSParser-in.cpp b/Source/core/css/CSSParser-in.cpp
|
| index d2486d94b2fe9aacdc49b106fca9c726afdd7f74..ccd8e71085b144afa925fa5106c715d3b441ae91 100644
|
| --- a/Source/core/css/CSSParser-in.cpp
|
| +++ b/Source/core/css/CSSParser-in.cpp
|
| @@ -2113,6 +2113,12 @@ bool CSSParser::parseValue(CSSPropertyID propId, bool important)
|
| }
|
|
|
| case CSSPropertyTextDecoration:
|
| + // Fall through 'text-decoration-line' parsing if CSS 3 Text Decoration
|
| + // is disabled to match CSS 2.1 rules for parsing 'text-decoration'.
|
| + if (RuntimeEnabledFeatures::css3TextDecorationsEnabled()) {
|
| + // [ <text-decoration-line> || <text-decoration-style> || <text-decoration-color> ] | inherit
|
| + return parseShorthand(CSSPropertyTextDecoration, textDecorationShorthand(), important);
|
| + }
|
| case CSSPropertyWebkitTextDecorationsInEffect:
|
| case CSSPropertyTextDecorationLine:
|
| // none | [ underline || overline || line-through || blink ] | inherit
|
| @@ -9013,7 +9019,8 @@ bool CSSParser::parseTextDecoration(CSSPropertyID propId, bool important)
|
| value = m_valueList->next();
|
| }
|
|
|
| - if (list->length() && isValid) {
|
| + // Values are either valid or in shorthand scope.
|
| + if (list->length() && (isValid || inShorthand())) {
|
| addTextDecorationProperty(propId, list.release(), important);
|
| return true;
|
| }
|
|
|