Title: [227525] trunk/Source/WebCore
- Revision
- 227525
- Author
- an...@apple.com
- Date
- 2018-01-24 09:28:54 -0800 (Wed, 24 Jan 2018)
Log Message
RenderBlockRareData::m_enclosingFragmentedFlow should be WeakPtr
https://bugs.webkit.org/show_bug.cgi?id=182045
<rdar://problem/36334787>
Reviewed by Zalan Bujtas.
For safety.
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::cachedEnclosingFragmentedFlow const):
(WebCore::RenderBlock::updateCachedEnclosingFragmentedFlow const):
(WebCore::RenderBlock::locateEnclosingFragmentedFlow const):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (227524 => 227525)
--- trunk/Source/WebCore/ChangeLog 2018-01-24 17:14:56 UTC (rev 227524)
+++ trunk/Source/WebCore/ChangeLog 2018-01-24 17:28:54 UTC (rev 227525)
@@ -1,3 +1,18 @@
+2018-01-24 Antti Koivisto <an...@apple.com>
+
+ RenderBlockRareData::m_enclosingFragmentedFlow should be WeakPtr
+ https://bugs.webkit.org/show_bug.cgi?id=182045
+ <rdar://problem/36334787>
+
+ Reviewed by Zalan Bujtas.
+
+ For safety.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::cachedEnclosingFragmentedFlow const):
+ (WebCore::RenderBlock::updateCachedEnclosingFragmentedFlow const):
+ (WebCore::RenderBlock::locateEnclosingFragmentedFlow const):
+
2018-01-23 Dean Jackson <d...@apple.com>
REGRESSION (r222961?): sRGB images shown in WebGL are over-saturated on a wide gamut monitor
Modified: trunk/Source/WebCore/rendering/RenderBlock.cpp (227524 => 227525)
--- trunk/Source/WebCore/rendering/RenderBlock.cpp 2018-01-24 17:14:56 UTC (rev 227524)
+++ trunk/Source/WebCore/rendering/RenderBlock.cpp 2018-01-24 17:28:54 UTC (rev 227525)
@@ -254,7 +254,7 @@
LayoutUnit m_pageLogicalOffset;
LayoutUnit m_intrinsicBorderForFieldset;
- std::optional<RenderFragmentedFlow*> m_enclosingFragmentedFlow;
+ std::optional<WeakPtr<RenderFragmentedFlow>> m_enclosingFragmentedFlow;
};
typedef HashMap<const RenderBlock*, std::unique_ptr<RenderBlockRareData>> RenderBlockRareDataMap;
@@ -2833,7 +2833,7 @@
if (!rareData || !rareData->m_enclosingFragmentedFlow)
return nullptr;
- return rareData->m_enclosingFragmentedFlow.value();
+ return rareData->m_enclosingFragmentedFlow.value().get();
}
bool RenderBlock::cachedEnclosingFragmentedFlowNeedsUpdate() const
@@ -2855,7 +2855,7 @@
RenderFragmentedFlow* RenderBlock::updateCachedEnclosingFragmentedFlow(RenderFragmentedFlow* fragmentedFlow) const
{
RenderBlockRareData& rareData = ensureBlockRareData(*this);
- rareData.m_enclosingFragmentedFlow = fragmentedFlow;
+ rareData.m_enclosingFragmentedFlow = makeWeakPtr(fragmentedFlow);
return fragmentedFlow;
}
@@ -2867,7 +2867,7 @@
return updateCachedEnclosingFragmentedFlow(RenderBox::locateEnclosingFragmentedFlow());
ASSERT(rareData->m_enclosingFragmentedFlow.value() == RenderBox::locateEnclosingFragmentedFlow());
- return rareData->m_enclosingFragmentedFlow.value();
+ return rareData->m_enclosingFragmentedFlow.value().get();
}
void RenderBlock::resetEnclosingFragmentedFlowAndChildInfoIncludingDescendants(RenderFragmentedFlow*)
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes