Index: Source/core/layout/LayoutObjectChildList.cpp |
diff --git a/Source/core/layout/LayoutObjectChildList.cpp b/Source/core/layout/LayoutObjectChildList.cpp |
index bcccbc081c0f36bbca307764c7ef40b7d8fcc7f2..d37415b31a609178404f3332fbd57d80e63924f3 100644 |
--- a/Source/core/layout/LayoutObjectChildList.cpp |
+++ b/Source/core/layout/LayoutObjectChildList.cpp |
@@ -28,6 +28,7 @@ |
#include "core/layout/LayoutObjectChildList.h" |
#include "core/dom/AXObjectCache.h" |
+#include "core/dom/MarkerPseudoElement.h" |
#include "core/layout/LayoutCounter.h" |
#include "core/layout/LayoutObject.h" |
#include "core/layout/LayoutView.h" |
@@ -39,10 +40,12 @@ namespace blink { |
void LayoutObjectChildList::destroyLeftoverChildren() |
{ |
while (firstChild()) { |
- // List markers are owned by their enclosing list and so don't get destroyed by this container. |
- if (firstChild()->isListMarker()) { |
- firstChild()->remove(); |
- continue; |
+ if (!RuntimeEnabledFeatures::listMarkerPseudoElementEnabled()) { |
+ // List markers are owned by their enclosing list and so don't get destroyed by this container. |
+ if (firstChild()->isListMarker()) { |
+ firstChild()->remove(); |
+ continue; |
+ } |
} |
// Destroy any anonymous children remaining in the render tree, as well as implicit (shadow) DOM elements like those used in the engine-based text fields. |