Skip to content

Commit

Permalink
Merge r228858 - [RenderTreeBuilder] Move RenderListItem::willBeRemove…
Browse files Browse the repository at this point in the history
…d() mutation logic to RenderTreeBuilder

https://bugs.webkit.org/show_bug.cgi?id=182943
<rdar://problem/37689029>

Reviewed by Antti Koivisto.

We don't need to destroy the marker in RenderListItem::willBeRemoved(), because it gets deleted
in RenderTreeBuilder::removeAndDestroy() together with RenderListItem (as long as the marker is
the RenderListItem's descendent).

Covered by existing tests.

* rendering/RenderListItem.cpp:
(WebCore::RenderListItem::~RenderListItem):
(WebCore::RenderListItem::willBeDestroyed): Deleted.
* rendering/RenderListItem.h:
  • Loading branch information
alanbaradlay authored and carlosgcampos committed Feb 26, 2018
1 parent 874400d commit 3e348c0
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 8 deletions.
19 changes: 19 additions & 0 deletions Source/WebCore/ChangeLog
@@ -1,3 +1,22 @@
2018-02-20 Zalan Bujtas <zalan@apple.com>

[RenderTreeBuilder] Move RenderListItem::willBeRemoved() mutation logic to RenderTreeBuilder
https://bugs.webkit.org/show_bug.cgi?id=182943
<rdar://problem/37689029>

Reviewed by Antti Koivisto.

We don't need to destroy the marker in RenderListItem::willBeRemoved(), because it gets deleted
in RenderTreeBuilder::removeAndDestroy() together with RenderListItem (as long as the marker is
the RenderListItem's descendent).

Covered by existing tests.

* rendering/RenderListItem.cpp:
(WebCore::RenderListItem::~RenderListItem):
(WebCore::RenderListItem::willBeDestroyed): Deleted.
* rendering/RenderListItem.h:

2018-02-20 Chris Dumez <cdumez@apple.com>

Crash under JSC::JSCell::toNumber(JSC::ExecState*)
Expand Down
8 changes: 1 addition & 7 deletions Source/WebCore/rendering/RenderListItem.cpp
Expand Up @@ -53,13 +53,7 @@ RenderListItem::RenderListItem(Element& element, RenderStyle&& style)
RenderListItem::~RenderListItem()
{
// Do not add any code here. Add it to willBeDestroyed() instead.
}

void RenderListItem::willBeDestroyed(RenderTreeBuilder& builder)
{
if (m_marker)
builder.removeAndDestroy(*m_marker);
RenderBlockFlow::willBeDestroyed(builder);
ASSERT(!m_marker);
}

RenderStyle RenderListItem::computeMarkerStyle() const
Expand Down
1 change: 0 additions & 1 deletion Source/WebCore/rendering/RenderListItem.h
Expand Up @@ -62,7 +62,6 @@ class RenderListItem final : public RenderBlockFlow {
bool isInReversedOrderedList() const;

private:
void willBeDestroyed(RenderTreeBuilder&) final;

const char* renderName() const final { return "RenderListItem"; }

Expand Down

0 comments on commit 3e348c0

Please sign in to comment.