Changeset 76366 in webkit


Ignore:
Timestamp:
Jan 21, 2011 11:20:05 AM (13 years ago)
Author:
Dimitri Glazkov
Message:

2011-01-21 Dimitri Glazkov <Dimitri Glazkov>

Reviewed by Darin Adler.

REGRESSION(r73618): Clicking on a search input causes a crash.
https://bugs.webkit.org/show_bug.cgi?id=52905

  • fast/dom/search-shadow-host-crash-expected.txt: Added.
  • fast/dom/search-shadow-host-crash.html: Added.

2011-01-21 Dimitri Glazkov <Dimitri Glazkov>

Reviewed by Darin Adler.

REGRESSION(r73618): Clicking on a search input causes a crash.
https://bugs.webkit.org/show_bug.cgi?id=52905

The problem is caused by TextControlInnerElement being used both as
shadow root and an element in a shadow subtree. The code assumed it is
only used as a shadow root.

Since this code is all just workaround for in-progress conversion to
new shadow DOM, I am just adding a check. This code will disappear
completely once bug 52788 is fixed.

Test: fast/dom/search-shadow-host-crash.html

  • dom/Node.cpp: (WebCore::Node::setShadowHost): Added an ASSERT for early detection

of attempting to stomp on the parentNode.

  • rendering/TextControlInnerElements.cpp: (WebCore::TextControlInnerElement::detach): Added a check to only

clear shadow host if we have one.

Location:
trunk
Files:
2 added
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r76365 r76366  
     12011-01-21  Dimitri Glazkov  <dglazkov@chromium.org>
     2
     3        Reviewed by Darin Adler.
     4
     5        REGRESSION(r73618): Clicking on a search input causes a crash.
     6        https://bugs.webkit.org/show_bug.cgi?id=52905
     7
     8        * fast/dom/search-shadow-host-crash-expected.txt: Added.
     9        * fast/dom/search-shadow-host-crash.html: Added.
     10
    1112011-01-21  Dimitri Glazkov  <dglazkov@chromium.org>
    212
  • trunk/Source/WebCore/ChangeLog

    r76359 r76366  
     12011-01-21  Dimitri Glazkov  <dglazkov@chromium.org>
     2
     3        Reviewed by Darin Adler.
     4
     5        REGRESSION(r73618): Clicking on a search input causes a crash.
     6        https://bugs.webkit.org/show_bug.cgi?id=52905
     7
     8        The problem is caused by TextControlInnerElement being used both as
     9        shadow root and an element in a shadow subtree. The code assumed it is
     10        only used as a shadow root.
     11
     12        Since this code is all just workaround for in-progress conversion to
     13        new shadow DOM, I am just adding a check. This code will disappear
     14        completely once bug 52788 is fixed.
     15
     16        Test: fast/dom/search-shadow-host-crash.html
     17
     18        * dom/Node.cpp:
     19        (WebCore::Node::setShadowHost): Added an ASSERT for early detection
     20            of attempting to stomp on the parentNode.
     21        * rendering/TextControlInnerElements.cpp:
     22        (WebCore::TextControlInnerElement::detach): Added a check to only
     23            clear shadow host if we have one.
     24
    1252011-01-21  Adam Roben  <aroben@apple.com>
    226
  • trunk/Source/WebCore/dom/Node.cpp

    r76115 r76366  
    493493void Node::setShadowHost(Element* host)
    494494{
     495    ASSERT(!parentNode());
    495496    if (host)
    496497        setFlag(IsShadowRootFlag);
  • trunk/Source/WebCore/rendering/TextControlInnerElements.cpp

    r76128 r76366  
    120120    HTMLDivElement::detach();
    121121    // FIXME: Remove once shadow DOM uses Element::setShadowRoot().
    122     setShadowHost(0);
     122    if (shadowHost())
     123        setShadowHost(0);
    123124}
    124125
Note: See TracChangeset for help on using the changeset viewer.