Ignore:
Timestamp:
Sep 22, 2013, 11:33:13 PM (12 years ago)
Author:
[email protected]
Message:

Unreviewed, rolling out r156253.
http://trac.webkit.org/changeset/156253
https://bugs.webkit.org/show_bug.cgi?id=121778

Caused >20 tests to crash with assertion failures (Requested
by ap on #webkit).

  • css/CSSAspectRatioValue.h:
  • css/CSSBorderImageSliceValue.h:
  • css/CSSCalculationValue.cpp:

(WebCore::CSSCalcExpressionNodeParser::parseValue):

  • css/CSSCalculationValue.h:
  • css/CSSCrossfadeValue.cpp:

(WebCore::subimageKnownToBeOpaque):

  • css/CSSCrossfadeValue.h:

(WebCore::toCSSCrossfadeValue):

  • css/CSSCursorImageValue.cpp:

(WebCore::CSSCursorImageValue::~CSSCursorImageValue):
(WebCore::CSSCursorImageValue::updateIfSVGCursorIsUsed):
(WebCore::CSSCursorImageValue::cachedImage):
(WebCore::CSSCursorImageValue::cachedOrPendingImage):
(WebCore::CSSCursorImageValue::isSVGCursor):

  • css/CSSCursorImageValue.h:
  • css/CSSFilterImageValue.h:

(WebCore::toCSSFilterImageValue):

  • css/CSSFontSelector.cpp:

(WebCore::CSSFontSelector::addFontFaceRule):

  • css/CSSGradientValue.h:
  • css/CSSImageGeneratorValue.cpp:

(WebCore::CSSImageGeneratorValue::image):
(WebCore::CSSImageGeneratorValue::fixedSize):
(WebCore::CSSImageGeneratorValue::loadSubimages):
(WebCore::CSSImageGeneratorValue::subimageIsPending):
(WebCore::CSSImageGeneratorValue::cachedImageForCSSValue):

  • css/CSSImageGeneratorValue.h:
  • css/CSSImageSetValue.cpp:

(WebCore::CSSImageSetValue::fillImageSet):

  • css/CSSImageSetValue.h:
  • css/CSSImageValue.h:
  • css/CSSInheritedValue.h:
  • css/CSSInitialValue.h:
  • css/CSSLineBoxContainValue.h:
  • css/CSSParser.cpp:

(WebCore::CSSParser::parseColor):
(WebCore::CSSParser::addProperty):
(WebCore::CSSParser::parse3ValuesFillPosition):
(WebCore::CSSParser::parseFillPosition):
(WebCore::CSSParser::parseFillRepeat):
(WebCore::CSSParser::parseDeprecatedRadialGradient):
(WebCore::CSSParser::parseRadialGradient):

  • css/CSSPrimitiveValue.h:
  • css/CSSReflectValue.h:
  • css/CSSToStyleMap.cpp:

(WebCore::CSSToStyleMap::mapFillAttachment):
(WebCore::CSSToStyleMap::mapFillClip):
(WebCore::CSSToStyleMap::mapFillComposite):
(WebCore::CSSToStyleMap::mapFillBlendMode):
(WebCore::CSSToStyleMap::mapFillOrigin):
(WebCore::CSSToStyleMap::mapFillRepeatX):
(WebCore::CSSToStyleMap::mapFillRepeatY):
(WebCore::CSSToStyleMap::mapFillSize):
(WebCore::CSSToStyleMap::mapFillXPosition):
(WebCore::CSSToStyleMap::mapFillYPosition):
(WebCore::CSSToStyleMap::mapFillMaskSourceType):
(WebCore::CSSToStyleMap::mapAnimationDelay):
(WebCore::CSSToStyleMap::mapAnimationDirection):
(WebCore::CSSToStyleMap::mapAnimationDuration):
(WebCore::CSSToStyleMap::mapAnimationFillMode):
(WebCore::CSSToStyleMap::mapAnimationIterationCount):
(WebCore::CSSToStyleMap::mapAnimationName):
(WebCore::CSSToStyleMap::mapAnimationPlayState):
(WebCore::CSSToStyleMap::mapAnimationProperty):
(WebCore::CSSToStyleMap::mapAnimationTimingFunction):
(WebCore::CSSToStyleMap::mapNinePieceImageSlice):
(WebCore::CSSToStyleMap::mapNinePieceImageQuad):
(WebCore::CSSToStyleMap::mapNinePieceImageRepeat):

  • css/CSSValue.cpp:

(WebCore::CSSValue::destroy):

  • css/CSSValue.h:

(WebCore::CSSValue::isCSSLineBoxContainValue):
(WebCore::CSSValue::isCalculationValue):

  • css/CSSValueList.h:
  • css/CSSVariableValue.h:
  • css/DeprecatedStyleBuilder.cpp:

(WebCore::ApplyPropertyDefault::applyValue):
(WebCore::ApplyPropertyNumber::applyValue):
(WebCore::ApplyPropertyAuto::applyValue):
(WebCore::ApplyPropertyClip::applyValue):
(WebCore::ApplyPropertyColor::applyValue):
(WebCore::ApplyPropertyLength::applyValue):
(WebCore::ApplyPropertyString::applyValue):
(WebCore::ApplyPropertyBorderRadius::applyValue):
(WebCore::ApplyPropertyComputeLength::applyValue):
(WebCore::ApplyPropertyFont::applyValue):
(WebCore::ApplyPropertyFontFamily::applyValue):
(WebCore::ApplyPropertyFontSize::applyValue):
(WebCore::ApplyPropertyFontWeight::applyValue):
(WebCore::ApplyPropertyFontVariantLigatures::applyValue):
(WebCore::ApplyPropertyCounter::applyValue):
(WebCore::ApplyPropertyCursor::applyValue):
(WebCore::ApplyPropertyTextAlign::applyValue):
(WebCore::ApplyPropertyTextDecoration::applyValue):
(WebCore::ApplyPropertyMarqueeIncrement::applyValue):
(WebCore::ApplyPropertyMarqueeRepetition::applyValue):
(WebCore::ApplyPropertyMarqueeSpeed::applyValue):
(WebCore::ApplyPropertyTextUnderlinePosition::applyValue):
(WebCore::ApplyPropertyLineHeight::applyValue):
(WebCore::ApplyPropertyLineHeightForIOSTextAutosizing::applyValue):
(WebCore::ApplyPropertyPageSize::applyValue):
(WebCore::ApplyPropertyTextEmphasisStyle::applyValue):
(WebCore::ApplyPropertyResize::applyValue):
(WebCore::ApplyPropertyVerticalAlign::applyValue):
(WebCore::ApplyPropertyAspectRatio::applyValue):
(WebCore::ApplyPropertyZoom::applyValue):
(WebCore::ApplyPropertyDisplay::applyValue):
(WebCore::ApplyPropertyClipPath::applyValue):
(WebCore::ApplyPropertyShape::applyValue):
(WebCore::ApplyPropertyImageResolution::applyValue):
(WebCore::ApplyPropertyTextIndent::applyValue):

  • css/FontFeatureValue.h:
  • css/FontValue.h:
  • css/MediaList.cpp:

(WebCore::reportMediaQueryWarningIfNeeded):

  • css/MediaQueryEvaluator.cpp:

(WebCore::compareAspectRatioValue):
(WebCore::numberValue):
(WebCore::orientationMediaFeatureEval):
(WebCore::evalResolution):
(WebCore::device_pixel_ratioMediaFeatureEval):
(WebCore::resolutionMediaFeatureEval):
(WebCore::computeLength):
(WebCore::view_modeMediaFeatureEval):
(WebCore::pointerMediaFeatureEval):

  • css/SVGCSSStyleSelector.cpp:

(WebCore::StyleResolver::applySVGProperty):

  • css/ShadowValue.h:
  • css/StylePropertySet.cpp:

(WebCore::StylePropertySet::getLayeredShorthandValue):

  • css/StyleResolver.cpp:

(WebCore::createGridTrackSize):
(WebCore::createGridTrackList):
(WebCore::createGridPosition):
(WebCore::hasVariableReference):
(WebCore::StyleResolver::applyProperty):
(WebCore::StyleResolver::styleImage):
(WebCore::StyleResolver::generatedOrPendingFromValue):
(WebCore::StyleResolver::styleShader):
(WebCore::StyleResolver::parseCustomFilterArrayParameter):
(WebCore::StyleResolver::parseCustomFilterColorParameter):
(WebCore::StyleResolver::parseCustomFilterNumberParameter):
(WebCore::StyleResolver::parseCustomFilterParameter):
(WebCore::StyleResolver::parseCustomFilterParameterList):
(WebCore::StyleResolver::createCustomFilterOperationWithInlineSyntax):
(WebCore::StyleResolver::createFilterOperations):

  • css/TransformFunctions.cpp:

(WebCore::transformsForValue):

  • css/ViewportStyleResolver.cpp:

(WebCore::ViewportStyleResolver::getViewportArgumentValue):

  • css/WebKitCSSMatrix.cpp:

(WebCore::WebKitCSSMatrix::setMatrixValue):

  • editing/ApplyStyleCommand.cpp:

(WebCore::ApplyStyleCommand::computedFontSize):

  • editing/EditingStyle.cpp:

(WebCore::identifierForStyleProperty):
(WebCore::HTMLElementEquivalent::valueIsPresentInStyle):
(WebCore::cssValueToRGBA):
(WebCore::EditingStyle::extractFontSizeDelta):
(WebCore::EditingStyle::textDirection):
(WebCore::EditingStyle::prepareToApplyAt):
(WebCore::EditingStyle::mergeStyleFromRulesForSerialization):
(WebCore::EditingStyle::legacyFontSize):
(WebCore::EditingStyle::textDirectionForSelection):
(WebCore::StyleChange::extractTextStyles):
(WebCore::fontWeightIsBold):
(WebCore::isTransparentColorValue):

  • editing/markup.cpp:

(WebCore::propertyMissingOrEqualToNone):

  • page/PageSerializer.cpp:

(WebCore::PageSerializer::retrieveResourcesForProperties):

  • rendering/style/StylePendingImage.h:

(WebCore::StylePendingImage::data):
(WebCore::StylePendingImage::cssImageValue):
(WebCore::StylePendingImage::cssImageGeneratorValue):
(WebCore::StylePendingImage::cssCursorImageValue):
(WebCore::StylePendingImage::cssImageSetValue):

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/css/StyleResolver.cpp

    r156253 r156260  
    19261926        return false;
    19271927
    1928     CSSPrimitiveValue* primitiveValue = toCSSPrimitiveValue(value);
     1928    CSSPrimitiveValue* primitiveValue = static_cast<CSSPrimitiveValue*>(value);
    19291929    Pair* minMaxTrackBreadth = primitiveValue->getPairValue();
    19301930    if (!minMaxTrackBreadth) {
     
    19501950    // Handle 'none'.
    19511951    if (value->isPrimitiveValue()) {
    1952         CSSPrimitiveValue* primitiveValue = toCSSPrimitiveValue(value);
     1952        CSSPrimitiveValue* primitiveValue = static_cast<CSSPrimitiveValue*>(value);
    19531953        return primitiveValue->getValueID() == CSSValueNone;
    19541954    }
     
    19611961        CSSValue* currValue = i.value();
    19621962        if (currValue->isPrimitiveValue()) {
    1963             CSSPrimitiveValue* primitiveValue = toCSSPrimitiveValue(currValue);
     1963            CSSPrimitiveValue* primitiveValue = static_cast<CSSPrimitiveValue*>(currValue);
    19641964            if (primitiveValue->isString()) {
    19651965                NamedGridLinesMap::AddResult result = namedGridLines.add(primitiveValue->getStringValue(), Vector<size_t>());
     
    19891989    if (value->isPrimitiveValue()) {
    19901990#if !ASSERT_DISABLED
    1991         ASSERT(toCSSPrimitiveValue(value)->getValueID() == CSSValueAuto);
     1991        CSSPrimitiveValue* primitiveValue = static_cast<CSSPrimitiveValue*>(value);
     1992        ASSERT(primitiveValue->getValueID() == CSSValueAuto);
    19921993#endif
    19931994        return true;
     
    20042005
    20052006    CSSValueListIterator it = values;
    2006     CSSPrimitiveValue* currentValue = toCSSPrimitiveValue(it.value());
     2007    CSSPrimitiveValue* currentValue = static_cast<CSSPrimitiveValue*>(it.value());
    20072008    if (currentValue->getValueID() == CSSValueSpan) {
    20082009        isSpanPosition = true;
    20092010        it.advance();
    2010         currentValue = it.hasMore() ? toCSSPrimitiveValue(it.value()) : 0;
     2011        currentValue = it.hasMore() ? static_cast<CSSPrimitiveValue*>(it.value()) : 0;
    20112012    }
    20122013
     
    20142015        gridLineNumber = currentValue->getIntValue();
    20152016        it.advance();
    2016         currentValue = it.hasMore() ? toCSSPrimitiveValue(it.value()) : 0;
     2017        currentValue = it.hasMore() ? static_cast<CSSPrimitiveValue*>(it.value()) : 0;
    20172018    }
    20182019
     
    20342035static bool hasVariableReference(CSSValue* value)
    20352036{
    2036     if (value->isPrimitiveValue())
    2037         return toCSSPrimitiveValue(value)->hasVariableReference();
    2038 
    2039     if (value->isCalcValue())
    2040         return toCSSCalcValue(value)->hasVariableReference();
     2037    if (value->isPrimitiveValue()) {
     2038        CSSPrimitiveValue* primitiveValue = static_cast<CSSPrimitiveValue*>(value);
     2039        return primitiveValue->hasVariableReference();
     2040    }
     2041
     2042    if (value->isCalculationValue())
     2043        return static_cast<CSSCalcValue*>(value)->hasVariableReference();
    20412044
    20422045    if (value->isReflectValue()) {
     
    21312134    }
    21322135
    2133     CSSPrimitiveValue* primitiveValue = value->isPrimitiveValue() ? toCSSPrimitiveValue(value) : 0;
     2136    CSSPrimitiveValue* primitiveValue = value->isPrimitiveValue() ? static_cast<CSSPrimitiveValue*>(value) : 0;
    21342137
    21352138    float zoomFactor = state.style()->effectiveZoom();
     
    21582161                if (item->isImageGeneratorValue()) {
    21592162                    if (item->isGradientValue())
    2160                         state.style()->setContent(StyleGeneratedImage::create(toCSSGradientValue(item)->gradientWithStylesResolved(this).get()), didSet);
     2163                        state.style()->setContent(StyleGeneratedImage::create(static_cast<CSSGradientValue*>(item)->gradientWithStylesResolved(this).get()), didSet);
    21612164                    else
    2162                         state.style()->setContent(StyleGeneratedImage::create(toCSSImageGeneratorValue(item)), didSet);
     2165                        state.style()->setContent(StyleGeneratedImage::create(static_cast<CSSImageGeneratorValue*>(item)), didSet);
    21632166                    didSet = true;
    21642167#if ENABLE(CSS_IMAGE_SET)
    21652168                } else if (item->isImageSetValue()) {
    2166                     state.style()->setContent(setOrPendingFromValue(CSSPropertyContent, toCSSImageSetValue(item)), didSet);
     2169                    state.style()->setContent(setOrPendingFromValue(CSSPropertyContent, static_cast<CSSImageSetValue*>(item)), didSet);
    21672170                    didSet = true;
    21682171#endif
     
    21702173
    21712174                if (item->isImageValue()) {
    2172                     state.style()->setContent(cachedOrPendingFromValue(CSSPropertyContent, toCSSImageValue(item)), didSet);
     2175                    state.style()->setContent(cachedOrPendingFromValue(CSSPropertyContent, static_cast<CSSImageValue*>(item)), didSet);
    21732176                    didSet = true;
    21742177                    continue;
     
    21782181                    continue;
    21792182
    2180                 CSSPrimitiveValue* contentValue = toCSSPrimitiveValue(item);
     2183                CSSPrimitiveValue* contentValue = static_cast<CSSPrimitiveValue*>(item);
    21812184
    21822185                if (contentValue->isString()) {
     
    22522255                ASSERT_WITH_SECURITY_IMPLICATION(first->isPrimitiveValue());
    22532256                ASSERT_WITH_SECURITY_IMPLICATION(second->isPrimitiveValue());
    2254                 String startQuote = toCSSPrimitiveValue(first)->getStringValue();
    2255                 String endQuote = toCSSPrimitiveValue(second)->getStringValue();
     2257                String startQuote = static_cast<CSSPrimitiveValue*>(first)->getStringValue();
     2258                String endQuote = static_cast<CSSPrimitiveValue*>(second)->getStringValue();
    22562259                quotes.append(std::make_pair(startQuote, endQuote));
    22572260            }
     
    26742677        }
    26752678
    2676         if (!value->isLineBoxContainValue())
     2679        if (!value->isCSSLineBoxContainValue())
    26772680            return;
    26782681
    2679         CSSLineBoxContainValue* lineBoxContainValue = toCSSLineBoxContainValue(value);
     2682        CSSLineBoxContainValue* lineBoxContainValue = static_cast<CSSLineBoxContainValue*>(value);
    26802683        state.style()->setLineBoxContain(lineBoxContainValue->value());
    26812684        return;
     
    30733076{
    30743077    if (value->isImageValue())
    3075         return cachedOrPendingFromValue(property, toCSSImageValue(value));
     3078        return cachedOrPendingFromValue(property, static_cast<CSSImageValue*>(value));
    30763079
    30773080    if (value->isImageGeneratorValue()) {
    30783081        if (value->isGradientValue())
    3079             return generatedOrPendingFromValue(property, toCSSGradientValue(value)->gradientWithStylesResolved(this).get());
    3080         return generatedOrPendingFromValue(property, toCSSImageGeneratorValue(value));
     3082            return generatedOrPendingFromValue(property, static_cast<CSSGradientValue*>(value)->gradientWithStylesResolved(this).get());
     3083        return generatedOrPendingFromValue(property, static_cast<CSSImageGeneratorValue*>(value));
    30813084    }
    30823085
    30833086#if ENABLE(CSS_IMAGE_SET)
    30843087    if (value->isImageSetValue())
    3085         return setOrPendingFromValue(property, toCSSImageSetValue(value));
     3088        return setOrPendingFromValue(property, static_cast<CSSImageSetValue*>(value));
    30863089#endif
    30873090
    30883091    if (value->isCursorImageValue())
    3089         return cursorOrPendingFromValue(property, toCSSCursorImageValue(value));
     3092        return cursorOrPendingFromValue(property, static_cast<CSSCursorImageValue*>(value));
    30903093
    30913094    return 0;
     
    31053108    if (value->isFilterImageValue()) {
    31063109        // FilterImage needs to calculate FilterOperations.
    3107         toCSSFilterImageValue(value)->createFilterOperations(this);
     3110        static_cast<CSSFilterImageValue*>(value)->createFilterOperations(this);
    31083111    }
    31093112#endif
     
    33843387{
    33853388    if (value->isWebKitCSSShaderValue())
    3386         return cachedOrPendingStyleShaderFromValue(toWebKitCSSShaderValue(value));
     3389        return cachedOrPendingStyleShaderFromValue(static_cast<WebKitCSSShaderValue*>(value));
    33873390    return 0;
    33883391}
     
    34673470        if (!value->isPrimitiveValue())
    34683471            return 0;
    3469         CSSPrimitiveValue* primitiveValue = toCSSPrimitiveValue(value);
     3472        CSSPrimitiveValue* primitiveValue = static_cast<CSSPrimitiveValue*>(value);
    34703473        if (primitiveValue->primitiveType() != CSSPrimitiveValue::CSS_NUMBER)
    34713474            return 0;
     
    34783481{
    34793482    ASSERT(values->length());
    3480     CSSPrimitiveValue* firstPrimitiveValue = toCSSPrimitiveValue(values->itemWithoutBoundsCheck(0));
     3483    CSSPrimitiveValue* firstPrimitiveValue = static_cast<CSSPrimitiveValue*>(values->itemWithoutBoundsCheck(0));
    34813484    RefPtr<CustomFilterColorParameter> colorParameter = CustomFilterColorParameter::create(name);
    34823485    colorParameter->setColor(Color(firstPrimitiveValue->getRGBA32Value()));
     
    34913494        if (!value->isPrimitiveValue())
    34923495            return 0;
    3493         CSSPrimitiveValue* primitiveValue = toCSSPrimitiveValue(value);
     3496        CSSPrimitiveValue* primitiveValue = static_cast<CSSPrimitiveValue*>(value);
    34943497        if (primitiveValue->primitiveType() != CSSPrimitiveValue::CSS_NUMBER)
    34953498            return 0;
     
    35403543        return 0;
    35413544   
    3542     CSSPrimitiveValue* firstPrimitiveValue = toCSSPrimitiveValue(values->itemWithoutBoundsCheck(0));
     3545    CSSPrimitiveValue* firstPrimitiveValue = static_cast<CSSPrimitiveValue*>(values->itemWithoutBoundsCheck(0));
    35433546    if (firstPrimitiveValue->primitiveType() == CSSPrimitiveValue::CSS_NUMBER)
    35443547        return parseCustomFilterNumberParameter(name, values);
     
    35603563        if (!iterator.isPrimitiveValue())
    35613564            return false;
    3562         CSSPrimitiveValue* primitiveValue = toCSSPrimitiveValue(iterator.value());
     3565        CSSPrimitiveValue* primitiveValue = static_cast<CSSPrimitiveValue*>(iterator.value());
    35633566        if (primitiveValue->primitiveType() != CSSPrimitiveValue::CSS_STRING)
    35643567            return false;
     
    36203623            ASSERT(mixFunction->length() <= 3);
    36213624            while (iterator.hasMore()) {
    3622                 CSSPrimitiveValue* primitiveValue = toCSSPrimitiveValue(iterator.value());
     3625                CSSPrimitiveValue* primitiveValue = static_cast<CSSPrimitiveValue*>(iterator.value());
    36233626                if (CSSParser::isBlendMode(primitiveValue->getValueID()))
    36243627                    mixSettings.blendMode = *primitiveValue;
     
    36523655
    36533656        if (iterator.hasMore() && iterator.isPrimitiveValue()) {
    3654             CSSPrimitiveValue* primitiveValue = toCSSPrimitiveValue(iterator.value());
     3657            CSSPrimitiveValue* primitiveValue = static_cast<CSSPrimitiveValue*>(iterator.value());
    36553658            if (primitiveValue->isNumber()) {
    36563659                // If only one integer value is specified, it will set both
     
    36613664                // Try to match another number for the rows.
    36623665                if (iterator.hasMore() && iterator.isPrimitiveValue()) {
    3663                     CSSPrimitiveValue* primitiveValue = toCSSPrimitiveValue(iterator.value());
     3666                    CSSPrimitiveValue* primitiveValue = static_cast<CSSPrimitiveValue*>(iterator.value());
    36643667                    if (primitiveValue->isNumber()) {
    36653668                        meshRows = primitiveValue->getIntValue();
     
    36713674       
    36723675        if (iterator.hasMore() && iterator.isPrimitiveValue()) {
    3673             if (toCSSPrimitiveValue(iterator.value())->getValueID() == CSSValueDetached) {
     3676            CSSPrimitiveValue* primitiveValue = static_cast<CSSPrimitiveValue*>(iterator.value());
     3677            if (primitiveValue->getValueID() == CSSValueDetached) {
    36743678                meshType = MeshTypeDetached;
    36753679                iterator.advance();
     
    37163720   
    37173721    if (inValue->isPrimitiveValue()) {
    3718         if (toCSSPrimitiveValue(inValue)->getValueID() == CSSValueNone)
     3722        CSSPrimitiveValue* primitiveValue = static_cast<CSSPrimitiveValue*>(inValue);
     3723        if (primitiveValue->getValueID() == CSSValueNone)
    37193724            return true;
    37203725    }
     
    37863791        }
    37873792
    3788         CSSPrimitiveValue* firstValue = filterValue->length() ? toCSSPrimitiveValue(filterValue->itemWithoutBoundsCheck(0)) : 0;
     3793        CSSPrimitiveValue* firstValue = filterValue->length() ? static_cast<CSSPrimitiveValue*>(filterValue->itemWithoutBoundsCheck(0)) : 0;
    37893794        switch (filterValue->operationType()) {
    37903795        case WebKitCSSFilterValue::GrayscaleFilterOperation:
Note: See TracChangeset for help on using the changeset viewer.