Changeset 171871 in webkit


Ignore:
Timestamp:
Jul 31, 2014 11:20:51 AM (10 years ago)
Author:
mhodovan.u-szeged@partner.samsung.com
Message:

Eliminate "FractionConversion" from CSSPrimitiveValue::convertToLength
https://bugs.webkit.org/show_bug.cgi?id=135377

Reviewed by Darin Adler.

The FractionConversion argument in CSSPrimitiveValue::convertToLength
doesn't seem to actually have a purpose. It is for converting numbers
into Length(x * 100, Percent), but this case shouldn't be reachable.
The original patch introducing it doesn't shed any light either:
[https://bugs.webkit.org/show_bug.cgi?id=74913

This patch removes the now unused FractionConversion argument. Note
that we can probably also merge the two Fixed conversions, as the
two only differ in clamping large numbers (probably unintended).

No new tests.

  • css/CSSCalculationValue.cpp:

(WebCore::determineCategory):

  • css/CSSParser.cpp:

(WebCore::parseTransformTranslateArguments):
(WebCore::parseTranslateTransformValue):
(WebCore::parseTransformArguments): Deleted.

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::convertToLength):

  • css/DeprecatedStyleBuilder.cpp:

(WebCore::ApplyPropertyClip::convertToLength):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::convertToIntLength):
(WebCore::StyleResolver::convertToFloatLength):

  • css/TransformFunctions.cpp:

(WebCore::convertToFloatLength):

Location:
trunk/Source/WebCore
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r171866 r171871  
     12014-07-31  Martin Hodovan  <mhodovan.u-szeged@partner.samsung.com>
     2
     3        Eliminate "FractionConversion" from CSSPrimitiveValue::convertToLength
     4        https://bugs.webkit.org/show_bug.cgi?id=135377
     5
     6        Reviewed by Darin Adler.
     7
     8        The FractionConversion argument in CSSPrimitiveValue::convertToLength
     9        doesn't seem to actually have a purpose. It is for converting numbers
     10        into Length(x * 100, Percent), but this case shouldn't be reachable.
     11        The original patch introducing it doesn't shed any light either:
     12        [https://bugs.webkit.org/show_bug.cgi?id=74913
     13
     14        This patch removes the now unused FractionConversion argument. Note
     15        that we can probably also merge the two Fixed conversions, as the
     16        two only differ in clamping large numbers (probably unintended).
     17
     18        Patch by Timothy Loh, backported from Blink: https://codereview.chromium.org/71253002
     19
     20        No new tests.
     21
     22        * css/CSSCalculationValue.cpp:
     23        (WebCore::determineCategory):
     24        * css/CSSParser.cpp:
     25        (WebCore::parseTransformTranslateArguments):
     26        (WebCore::parseTranslateTransformValue):
     27        (WebCore::parseTransformArguments): Deleted.
     28        * css/CSSPrimitiveValueMappings.h:
     29        (WebCore::CSSPrimitiveValue::convertToLength):
     30        * css/DeprecatedStyleBuilder.cpp:
     31        (WebCore::ApplyPropertyClip::convertToLength):
     32        * css/StyleResolver.cpp:
     33        (WebCore::StyleResolver::convertToIntLength):
     34        (WebCore::StyleResolver::convertToFloatLength):
     35        * css/TransformFunctions.cpp:
     36        (WebCore::convertToFloatLength):
     37
    1382014-07-31  Joseph Pecoraro  <pecoraro@apple.com>
    239
  • trunk/Source/WebCore/css/CSSCalculationValue.cpp

    r170774 r171871  
    229229            CSSPrimitiveValue* primitiveValue = m_value.get();
    230230            return std::make_unique<CalcExpressionLength>(primitiveValue
    231                 ? primitiveValue->convertToLength<FixedFloatConversion | PercentConversion | FractionConversion>(conversionData) : Length(Undefined));
     231                ? primitiveValue->convertToLength<FixedFloatConversion | PercentConversion>(conversionData) : Length(Undefined));
    232232        }
    233233        // Only types that could be part of a Length expression can be converted
  • trunk/Source/WebCore/css/CSSParser.cpp

    r171677 r171871  
    11821182
    11831183template <typename CharacterType>
    1184 static bool parseTransformArguments(WebKitCSSTransformValue* transformValue, CharacterType* characters, unsigned length, unsigned start, unsigned expectedCount)
     1184static bool parseTransformTranslateArguments(WebKitCSSTransformValue* transformValue, CharacterType* characters, unsigned length, unsigned start, unsigned expectedCount)
    11851185{
    11861186    while (expectedCount) {
     
    11951195        if (unit != CSSPrimitiveValue::CSS_PX && (number || unit != CSSPrimitiveValue::CSS_NUMBER))
    11961196            return false;
    1197         transformValue->append(cssValuePool().createValue(number, unit));
     1197        transformValue->append(cssValuePool().createValue(number, CSSPrimitiveValue::CSS_PX));
    11981198        start = end + 1;
    11991199        --expectedCount;
     
    12381238    bool success;
    12391239    if (string.is8Bit())
    1240         success = parseTransformArguments(transformValue.get(), string.characters8(), string.length(), argumentStart, expectedArgumentCount);
     1240        success = parseTransformTranslateArguments(transformValue.get(), string.characters8(), string.length(), argumentStart, expectedArgumentCount);
    12411241    else
    1242         success = parseTransformArguments(transformValue.get(), string.characters16(), string.length(), argumentStart, expectedArgumentCount);
     1242        success = parseTransformTranslateArguments(transformValue.get(), string.characters16(), string.length(), argumentStart, expectedArgumentCount);
    12431243    if (!success)
    12441244        return false;
  • trunk/Source/WebCore/css/CSSPrimitiveValueMappings.h

    r171677 r171871  
    45664566    AutoConversion = 1 << 2,
    45674567    PercentConversion = 1 << 3,
    4568     FractionConversion = 1 << 4,
    4569     CalculatedConversion = 1 << 5
     4568    CalculatedConversion = 1 << 4
    45704569};
    45714570
     
    45804579    if ((supported & PercentConversion) && isPercentage())
    45814580        return Length(getDoubleValue(), Percent);
    4582     if ((supported & FractionConversion) && isNumber())
    4583         return Length(getDoubleValue() * 100.0, Percent);
    45844581    if ((supported & AutoConversion) && getValueID() == CSSValueAuto)
    45854582        return Length(Auto);
  • trunk/Source/WebCore/css/DeprecatedStyleBuilder.cpp

    r171591 r171871  
    231231    static Length convertToLength(StyleResolver* styleResolver, CSSPrimitiveValue* value)
    232232    {
    233         return value->convertToLength<FixedIntegerConversion | PercentConversion | FractionConversion | AutoConversion>(styleResolver->state().cssToLengthConversionData());
     233        return value->convertToLength<FixedIntegerConversion | PercentConversion | AutoConversion>(styleResolver->state().cssToLengthConversionData());
    234234    }
    235235public:
  • trunk/Source/WebCore/css/StyleResolver.cpp

    r171785 r171871  
    14651465Length StyleResolver::convertToIntLength(const CSSPrimitiveValue* primitiveValue, const CSSToLengthConversionData& conversionData)
    14661466{
    1467     return primitiveValue ? primitiveValue->convertToLength<FixedIntegerConversion | PercentConversion | CalculatedConversion | FractionConversion>(conversionData) : Length(Undefined);
     1467    return primitiveValue ? primitiveValue->convertToLength<FixedIntegerConversion | PercentConversion | CalculatedConversion>(conversionData) : Length(Undefined);
    14681468}
    14691469
    14701470Length StyleResolver::convertToFloatLength(const CSSPrimitiveValue* primitiveValue, const CSSToLengthConversionData& conversionData)
    14711471{
    1472     return primitiveValue ? primitiveValue->convertToLength<FixedFloatConversion | PercentConversion | CalculatedConversion | FractionConversion>(conversionData) : Length(Undefined);
     1472    return primitiveValue ? primitiveValue->convertToLength<FixedFloatConversion | PercentConversion | CalculatedConversion>(conversionData) : Length(Undefined);
    14731473}
    14741474
  • trunk/Source/WebCore/css/TransformFunctions.cpp

    r169407 r171871  
    7979static Length convertToFloatLength(const CSSPrimitiveValue* primitiveValue, const CSSToLengthConversionData& conversionData)
    8080{
    81     return primitiveValue ? primitiveValue->convertToLength<FixedFloatConversion | PercentConversion | CalculatedConversion | FractionConversion>(conversionData) : Length(Undefined);
     81    return primitiveValue ? primitiveValue->convertToLength<FixedFloatConversion | PercentConversion | CalculatedConversion>(conversionData) : Length(Undefined);
    8282}
    8383
Note: See TracChangeset for help on using the changeset viewer.