Bug 89177 - CompositeShadowTreeWalker should use InsertionPoint::hasDistribution instead of InsertionPoint::isActive
Summary: CompositeShadowTreeWalker should use InsertionPoint::hasDistribution instead ...
Alias: None
Product: WebKit
Classification: Unclassified
Component: DOM (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Hayato Ito
Depends on:
Blocks: 78585 89732
  Show dependency treegraph
Reported: 2012-06-14 23:45 PDT by Hayato Ito
Modified: 2012-06-28 16:06 PDT (History)
6 users (show)

See Also:

fix (6.05 KB, patch)
2012-06-15 03:59 PDT, Hayato Ito
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Hayato Ito 2012-06-14 23:45:02 PDT
Currently, CompositeShadowTreeWalker uses InsertionPoint::isActive() to judge whether there are distributed nodes into the insertion point.
But that is wrong. That should use InsertionPoint::hasDistribution() since InsertionPoint::isActive() return true when the insertion point which does not select any node and has fallback elements.
Comment 1 Hayato Ito 2012-06-15 00:05:37 PDT
WONTFIX. CompositeShadowTreeWalker is innocent.
Comment 2 Hayato Ito 2012-06-15 03:33:40 PDT
Reopened. ComposedShadowTreeWalker wrongly traverses nodes in the following case:

            <div id=fallback>
    <div id=distributed-node>

If ComposendShadowTreeWalker traverses this tree, starting with #fallback element, it wrongly *escapes* out of the parent <content> element. Since a #fallback element is not used in composed shadow dom tree, it should be treated as orphaned subtree.
Comment 3 Hayato Ito 2012-06-15 03:59:20 PDT
Created attachment 147789 [details]
Comment 4 WebKit Review Bot 2012-06-28 16:06:15 PDT
Comment on attachment 147789 [details]

Clearing flags on attachment: 147789

Committed r121481: <http://trac.webkit.org/changeset/121481>
Comment 5 WebKit Review Bot 2012-06-28 16:06:23 PDT
All reviewed patches have been landed.  Closing bug.