summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/rendering/RenderObjectChildList.cpp
diff options
context:
space:
mode:
authorJohn Reck <jreck@google.com>2011-10-20 15:23:20 -0700
committerJohn Reck <jreck@google.com>2011-10-20 15:23:20 -0700
commit2190c2d4386e3783d331c0bcf01774d466d08aac (patch)
tree7fcdaef8d95928368269e380ee9fc4257c4779b6 /Source/WebCore/rendering/RenderObjectChildList.cpp
parent94cabcbdc194d4a28d31cfb82be98a287b8cf1c9 (diff)
downloadexternal_webkit-2190c2d4386e3783d331c0bcf01774d466d08aac.zip
external_webkit-2190c2d4386e3783d331c0bcf01774d466d08aac.tar.gz
external_webkit-2190c2d4386e3783d331c0bcf01774d466d08aac.tar.bz2
Cherry pick 94857
Bug: 5491573 Change-Id: I32666ca6abdc2e224e6b9727f65e62fd3bd10859
Diffstat (limited to 'Source/WebCore/rendering/RenderObjectChildList.cpp')
-rw-r--r--Source/WebCore/rendering/RenderObjectChildList.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/Source/WebCore/rendering/RenderObjectChildList.cpp b/Source/WebCore/rendering/RenderObjectChildList.cpp
index 1ea8675..b6c7992 100644
--- a/Source/WebCore/rendering/RenderObjectChildList.cpp
+++ b/Source/WebCore/rendering/RenderObjectChildList.cpp
@@ -271,7 +271,12 @@ RenderObject* RenderObjectChildList::beforePseudoElementRenderer(const RenderObj
do {
// Skip list markers and generated run-ins
first = first->firstChild();
- while (first && (first->isListMarker() || (first->isRenderInline() && first->isRunIn() && first->isAnonymous())))
+ while (first && first->isListMarker()) {
+ if (first->parent() != owner && first->parent()->isAnonymousBlock())
+ first = first->parent();
+ first = first->nextSibling();
+ }
+ while (first && first->isRenderInline() && first->isRunIn())
first = first->nextSibling();
} while (first && first->isAnonymous() && first->style()->styleType() == NOPSEUDO);
@@ -293,7 +298,7 @@ RenderObject* RenderObjectChildList::beforePseudoElementRenderer(const RenderObj
// We still need to skip any list markers that could exist before the run-in.
while (first && first->isListMarker())
first = first->nextSibling();
- if (first && first->style()->styleType() == BEFORE && first->isRenderInline() && first->isRunIn() && first->isAnonymous())
+ if (first && first->style()->styleType() == BEFORE && first->isRenderInline() && first->isRunIn())
return first;
}
return 0;