Changeset 64810 in webkit


Ignore:
Timestamp:
Aug 5, 2010 6:54:40 PM (14 years ago)
Author:
commit-queue@webkit.org
Message:

2010-08-05 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r63653.
http://trac.webkit.org/changeset/63653
https://bugs.webkit.org/show_bug.cgi?id=43592

regressed multiple background-images (Requested by smfr on
#webkit).

  • manual-tests/css3-background-layer-count.html: Removed.
  • rendering/style/FillLayer.cpp: (WebCore::FillLayer::fillUnsetProperties): (WebCore::FillLayer::cullEmptyLayers):
  • rendering/style/RenderStyle.h: (WebCore::InheritedFlags::adjustBackgroundLayers): (WebCore::InheritedFlags::adjustMaskLayers):
Location:
trunk/WebCore
Files:
1 deleted
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/WebCore/ChangeLog

    r64809 r64810  
     12010-08-05  Sheriff Bot  <webkit.review.bot@gmail.com>
     2
     3        Unreviewed, rolling out r63653.
     4        http://trac.webkit.org/changeset/63653
     5        https://bugs.webkit.org/show_bug.cgi?id=43592
     6
     7        regressed multiple background-images (Requested by smfr on
     8        #webkit).
     9
     10        * manual-tests/css3-background-layer-count.html: Removed.
     11        * rendering/style/FillLayer.cpp:
     12        (WebCore::FillLayer::fillUnsetProperties):
     13        (WebCore::FillLayer::cullEmptyLayers):
     14        * rendering/style/RenderStyle.h:
     15        (WebCore::InheritedFlags::adjustBackgroundLayers):
     16        (WebCore::InheritedFlags::adjustMaskLayers):
     17
    1182010-08-05  Mark Rowe  <mrowe@apple.com>
    219
  • trunk/WebCore/rendering/style/FillLayer.cpp

    r63653 r64810  
    130130{
    131131    FillLayer* curr;
     132    for (curr = this; curr && curr->isImageSet(); curr = curr->next()) { }
     133    if (curr && curr != this) {
     134        // We need to fill in the remaining values with the pattern specified.
     135        for (FillLayer* pattern = this; curr; curr = curr->next()) {
     136            curr->m_image = pattern->m_image;
     137            pattern = pattern->next();
     138            if (pattern == curr || !pattern)
     139                pattern = this;
     140        }
     141    }
     142   
    132143    for (curr = this; curr && curr->isXPositionSet(); curr = curr->next()) { }
    133144    if (curr && curr != this) {
     
    233244void FillLayer::cullEmptyLayers()
    234245{
    235     // CSS3 background layering: the number of background layers is determined
    236     // by the number of values in the 'background-image' property.
    237     // http://www.w3.org/TR/css3-background/#layering
    238 
    239246    FillLayer* next;
    240247    for (FillLayer* p = this; p; p = next) {
    241248        next = p->m_next;
    242         if (!next)
    243             break;
    244 
    245         bool anyAttributeSet = next->isXPositionSet()
    246             || next->isYPositionSet()
    247             || next->isAttachmentSet()
    248             || next->isClipSet()
    249             || next->isCompositeSet()
    250             || next->isOriginSet()
    251             || next->isRepeatXSet()
    252             || next->isRepeatYSet()
    253             || next->isSizeSet();
    254 
    255         if (!next->isImageSet() || !anyAttributeSet) {
     249        if (next && !next->isImageSet() &&
     250            !next->isXPositionSet() && !next->isYPositionSet() &&
     251            !next->isAttachmentSet() && !next->isClipSet() &&
     252            !next->isCompositeSet() && !next->isOriginSet() &&
     253            !next->isRepeatXSet() && !next->isRepeatYSet()
     254            && !next->isSizeSet()) {
    256255            delete next;
    257256            p->m_next = 0;
  • trunk/WebCore/rendering/style/RenderStyle.h

    r64801 r64810  
    874874    {
    875875        if (backgroundLayers()->next()) {
     876            accessBackgroundLayers()->cullEmptyLayers();
    876877            accessBackgroundLayers()->fillUnsetProperties();
    877             accessBackgroundLayers()->cullEmptyLayers();
    878878        }
    879879    }
     
    885885    {
    886886        if (maskLayers()->next()) {
     887            accessMaskLayers()->cullEmptyLayers();
    887888            accessMaskLayers()->fillUnsetProperties();
    888             accessMaskLayers()->cullEmptyLayers();
    889889        }
    890890    }
Note: See TracChangeset for help on using the changeset viewer.