Changeset 63560 in webkit


Ignore:
Timestamp:
Jul 16, 2010 9:50:51 AM (14 years ago)
Author:
rwlbuis@webkit.org
Message:

2010-07-15 Rob Buis <rwlbuis@gmail.com>

Reviewed by Darin Adler.

An empty value for xml:lang isn't considered
https://bugs.webkit.org/show_bug.cgi?id=42042

Allow :lang selector to match empty values for xml:lang and
lang attributes.

Test: fast/css/lang-selector-empty-attribute.xhtml

  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
Location:
trunk
Files:
2 added
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r63559 r63560  
     12010-07-15  Rob Buis  <rwlbuis@gmail.com>
     2
     3        Reviewed by Darin Adler.
     4
     5        Add test for:
     6        An empty value for xml:lang isn't considered
     7        https://bugs.webkit.org/show_bug.cgi?id=42042
     8
     9        * fast/css/lang-selector-empty-attribute-expected.txt: Added.
     10        * fast/css/lang-selector-empty-attribute.xhtml: Added.
     11
    1122010-07-15  Tony Gentilcore  <tonyg@chromium.org>
    213
  • trunk/WebCore/ChangeLog

    r63558 r63560  
     12010-07-15  Rob Buis  <rwlbuis@gmail.com>
     2
     3        Reviewed by Darin Adler.
     4
     5        An empty value for xml:lang isn't considered
     6        https://bugs.webkit.org/show_bug.cgi?id=42042
     7
     8        Allow :lang selector to match empty values for xml:lang and
     9        lang attributes.
     10
     11        Test: fast/css/lang-selector-empty-attribute.xhtml
     12
     13        * css/CSSStyleSelector.cpp:
     14        (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
     15
    1162010-07-16  Alexander Pavlov  <apavlov@chromium.org>
    217
  • trunk/WebCore/css/CSSStyleSelector.cpp

    r63509 r63560  
    26012601                // The language property is inherited, so we iterate over the parents
    26022602                // to find the first language.
    2603                 while (n && value.isEmpty()) {
     2603                while (n && value.isNull()) {
    26042604                    if (n->isElementNode()) {
    26052605                        // Spec: xml:lang takes precedence -- http://www.w3.org/TR/xhtml1/#C_7
    26062606                        value = static_cast<Element*>(n)->fastGetAttribute(XMLNames::langAttr);
    2607                         if (value.isEmpty())
     2607                        if (value.isNull())
    26082608                            value = static_cast<Element*>(n)->fastGetAttribute(langAttr);
    26092609                    } else if (n->isDocumentNode())
     
    26142614                }
    26152615                const AtomicString& argument = sel->argument();
    2616                 if (value.isEmpty() || !value.startsWith(argument, false))
     2616                if (value.isNull() || !value.startsWith(argument, false))
    26172617                    break;
    26182618                if (value.length() != argument.length() && value[argument.length()] != '-')
Note: See TracChangeset for help on using the changeset viewer.