Diff
Modified: trunk/Source/WTF/ChangeLog (235257 => 235258)
--- trunk/Source/WTF/ChangeLog 2018-08-23 23:32:47 UTC (rev 235257)
+++ trunk/Source/WTF/ChangeLog 2018-08-23 23:36:02 UTC (rev 235258)
@@ -1,3 +1,15 @@
+2018-08-23 David Fenton <[email protected]>
+
+ Unreviewed, rolling out r235129.
+
+ broke internal builds
+
+ Reverted changeset:
+
+ "Allow creating WeakPtrs to const objects"
+ https://bugs.webkit.org/show_bug.cgi?id=188785
+ https://trac.webkit.org/changeset/235129
+
2018-08-23 Don Olmstead <[email protected]>
[CMake] Add HAVE_MALLOC_TRIM definition
Modified: trunk/Source/WTF/wtf/WeakPtr.h (235257 => 235258)
--- trunk/Source/WTF/wtf/WeakPtr.h 2018-08-23 23:32:47 UTC (rev 235257)
+++ trunk/Source/WTF/wtf/WeakPtr.h 2018-08-23 23:36:02 UTC (rev 235258)
@@ -111,13 +111,6 @@
return { makeRef(*m_ref) };
}
- WeakPtr<const T> createWeakPtr(const T& ptr) const
- {
- if (!m_ref)
- m_ref = WeakReference<T>::create(const_cast<T*>(&ptr));
- return { makeRef(reinterpret_cast<WeakReference<const T>&>(*m_ref)) };
- }
-
void revokeAll()
{
if (!m_ref)
Modified: trunk/Source/WebCore/ChangeLog (235257 => 235258)
--- trunk/Source/WebCore/ChangeLog 2018-08-23 23:32:47 UTC (rev 235257)
+++ trunk/Source/WebCore/ChangeLog 2018-08-23 23:36:02 UTC (rev 235258)
@@ -1,3 +1,15 @@
+2018-08-23 David Fenton <[email protected]>
+
+ Unreviewed, rolling out r235129.
+
+ broke internal builds
+
+ Reverted changeset:
+
+ "Allow creating WeakPtrs to const objects"
+ https://bugs.webkit.org/show_bug.cgi?id=188785
+ https://trac.webkit.org/changeset/235129
+
2018-08-23 Daniel Bates <[email protected]>
[iOS] Test editing/undo/replace-text-in-node-preserving-markers-crash.html crashes
Modified: trunk/Source/WebCore/css/MediaQueryEvaluator.cpp (235257 => 235258)
--- trunk/Source/WebCore/css/MediaQueryEvaluator.cpp 2018-08-23 23:32:47 UTC (rev 235257)
+++ trunk/Source/WebCore/css/MediaQueryEvaluator.cpp 2018-08-23 23:36:02 UTC (rev 235258)
@@ -110,7 +110,7 @@
MediaQueryEvaluator::MediaQueryEvaluator(const String& acceptedMediaType, const Document& document, const RenderStyle* style)
: m_mediaType(acceptedMediaType)
- , m_document(makeWeakPtr(document))
+ , m_document(makeWeakPtr(const_cast<Document&>(document)))
, m_style(style)
{
}
@@ -787,7 +787,7 @@
if (!m_document)
return m_fallbackResult;
- auto& document = *m_document;
+ Document& document = *m_document;
auto* frame = document.frame();
if (!frame || !frame->view() || !m_style)
return m_fallbackResult;
Modified: trunk/Source/WebCore/css/MediaQueryEvaluator.h (235257 => 235258)
--- trunk/Source/WebCore/css/MediaQueryEvaluator.h 2018-08-23 23:32:47 UTC (rev 235257)
+++ trunk/Source/WebCore/css/MediaQueryEvaluator.h 2018-08-23 23:36:02 UTC (rev 235258)
@@ -75,7 +75,7 @@
private:
String m_mediaType;
- WeakPtr<const Document> m_document;
+ WeakPtr<Document> m_document;
const RenderStyle* m_style { nullptr };
bool m_fallbackResult { false };
};
Modified: trunk/Source/WebCore/rendering/FloatingObjects.cpp (235257 => 235258)
--- trunk/Source/WebCore/rendering/FloatingObjects.cpp 2018-08-23 23:32:47 UTC (rev 235257)
+++ trunk/Source/WebCore/rendering/FloatingObjects.cpp 2018-08-23 23:36:02 UTC (rev 235258)
@@ -124,7 +124,7 @@
public:
typedef FloatingObjectInterval IntervalType;
- ComputeFloatOffsetAdapter(const RenderBlockFlow& renderer, LayoutUnit lineTop, LayoutUnit lineBottom, LayoutUnit offset)
+ ComputeFloatOffsetAdapter(RenderBlockFlow& renderer, LayoutUnit lineTop, LayoutUnit lineBottom, LayoutUnit offset)
: m_renderer(makeWeakPtr(renderer))
, m_lineTop(lineTop)
, m_lineBottom(lineBottom)
@@ -144,7 +144,7 @@
protected:
virtual bool updateOffsetIfNeeded(const FloatingObject&) = 0;
- WeakPtr<const RenderBlockFlow> m_renderer;
+ WeakPtr<RenderBlockFlow> m_renderer;
LayoutUnit m_lineTop;
LayoutUnit m_lineBottom;
LayoutUnit m_offset;
@@ -154,7 +154,7 @@
template <FloatingObject::Type FloatTypeValue>
class ComputeFloatOffsetForFloatLayoutAdapter : public ComputeFloatOffsetAdapter<FloatTypeValue> {
public:
- ComputeFloatOffsetForFloatLayoutAdapter(const RenderBlockFlow& renderer, LayoutUnit lineTop, LayoutUnit lineBottom, LayoutUnit offset)
+ ComputeFloatOffsetForFloatLayoutAdapter(RenderBlockFlow& renderer, LayoutUnit lineTop, LayoutUnit lineBottom, LayoutUnit offset)
: ComputeFloatOffsetAdapter<FloatTypeValue>(renderer, lineTop, lineBottom, offset)
{
}
@@ -170,7 +170,7 @@
template <FloatingObject::Type FloatTypeValue>
class ComputeFloatOffsetForLineLayoutAdapter : public ComputeFloatOffsetAdapter<FloatTypeValue> {
public:
- ComputeFloatOffsetForLineLayoutAdapter(const RenderBlockFlow& renderer, LayoutUnit lineTop, LayoutUnit lineBottom, LayoutUnit offset)
+ ComputeFloatOffsetForLineLayoutAdapter(RenderBlockFlow& renderer, LayoutUnit lineTop, LayoutUnit lineBottom, LayoutUnit offset)
: ComputeFloatOffsetAdapter<FloatTypeValue>(renderer, lineTop, lineBottom, offset)
{
}
@@ -185,7 +185,7 @@
public:
typedef FloatingObjectInterval IntervalType;
- FindNextFloatLogicalBottomAdapter(const RenderBlockFlow& renderer, LayoutUnit belowLogicalHeight)
+ FindNextFloatLogicalBottomAdapter(RenderBlockFlow& renderer, LayoutUnit belowLogicalHeight)
: m_renderer(makeWeakPtr(renderer))
, m_belowLogicalHeight(belowLogicalHeight)
{
@@ -199,7 +199,7 @@
LayoutUnit nextShapeLogicalBottom() const { return m_nextShapeLogicalBottom.value_or(nextLogicalBottom()); }
private:
- WeakPtr<const RenderBlockFlow> m_renderer;
+ WeakPtr<RenderBlockFlow> m_renderer;
LayoutUnit m_belowLogicalHeight;
std::optional<LayoutUnit> m_nextLogicalBottom;
std::optional<LayoutUnit> m_nextShapeLogicalBottom;
@@ -250,7 +250,7 @@
: m_leftObjectsCount(0)
, m_rightObjectsCount(0)
, m_horizontalWritingMode(renderer.isHorizontalWritingMode())
- , m_renderer(makeWeakPtr(renderer))
+ , m_renderer(makeWeakPtr(const_cast<RenderBlockFlow&>(renderer)))
{
}
Modified: trunk/Source/WebCore/rendering/FloatingObjects.h (235257 => 235258)
--- trunk/Source/WebCore/rendering/FloatingObjects.h 2018-08-23 23:32:47 UTC (rev 235257)
+++ trunk/Source/WebCore/rendering/FloatingObjects.h 2018-08-23 23:36:02 UTC (rev 235258)
@@ -161,7 +161,7 @@
LayoutUnit findNextFloatLogicalBottomBelowForBlock(LayoutUnit logicalHeight);
private:
- const RenderBlockFlow& renderer() const { return *m_renderer; }
+ RenderBlockFlow& renderer() const { return *m_renderer; }
void computePlacedFloatsTree();
const FloatingObjectTree* placedFloatsTree();
void increaseObjectsCount(FloatingObject::Type);
@@ -173,7 +173,7 @@
unsigned m_leftObjectsCount;
unsigned m_rightObjectsCount;
bool m_horizontalWritingMode;
- WeakPtr<const RenderBlockFlow> m_renderer;
+ WeakPtr<RenderBlockFlow> m_renderer;
};
} // namespace WebCore
Modified: trunk/Tools/ChangeLog (235257 => 235258)
--- trunk/Tools/ChangeLog 2018-08-23 23:32:47 UTC (rev 235257)
+++ trunk/Tools/ChangeLog 2018-08-23 23:36:02 UTC (rev 235258)
@@ -1,3 +1,15 @@
+2018-08-23 David Fenton <[email protected]>
+
+ Unreviewed, rolling out r235129.
+
+ broke internal builds
+
+ Reverted changeset:
+
+ "Allow creating WeakPtrs to const objects"
+ https://bugs.webkit.org/show_bug.cgi?id=188785
+ https://trac.webkit.org/changeset/235129
+
2018-08-23 Jonathan Bedard <[email protected]>
API tests should output json results
Modified: trunk/Tools/TestWebKitAPI/Tests/WTF/WeakPtr.cpp (235257 => 235258)
--- trunk/Tools/TestWebKitAPI/Tests/WTF/WeakPtr.cpp 2018-08-23 23:32:47 UTC (rev 235257)
+++ trunk/Tools/TestWebKitAPI/Tests/WTF/WeakPtr.cpp 2018-08-23 23:36:02 UTC (rev 235258)
@@ -206,7 +206,7 @@
return 0;
}
- auto& weakPtrFactory() const { return m_weakPtrFactory; }
+ auto& weakPtrFactory() { return m_weakPtrFactory; }
private:
WeakPtrFactory<Base> m_weakPtrFactory;
@@ -284,38 +284,4 @@
}
}
-TEST(WTF_WeakPtr, DerivedConstructAndAssignConst)
-{
- const Derived derived;
- {
- auto derivedWeakPtr = makeWeakPtr(derived);
- WeakPtr<const Base> baseWeakPtr { WTFMove(derivedWeakPtr) };
- EXPECT_EQ(baseWeakPtr.get(), &derived);
- EXPECT_NULL(derivedWeakPtr.get());
- }
-
- {
- auto derivedWeakPtr = makeWeakPtr(derived);
- WeakPtr<const Base> baseWeakPtr { derivedWeakPtr };
- EXPECT_EQ(baseWeakPtr.get(), &derived);
- EXPECT_EQ(derivedWeakPtr.get(), &derived);
- }
-
- {
- auto derivedWeakPtr = makeWeakPtr(derived);
- WeakPtr<const Base> baseWeakPtr;
- baseWeakPtr = WTFMove(derivedWeakPtr);
- EXPECT_EQ(baseWeakPtr.get(), &derived);
- EXPECT_NULL(derivedWeakPtr.get());
- }
-
- {
- auto derivedWeakPtr = makeWeakPtr(derived);
- WeakPtr<const Base> baseWeakPtr;
- baseWeakPtr = derivedWeakPtr;
- EXPECT_EQ(baseWeakPtr.get(), &derived);
- EXPECT_EQ(derivedWeakPtr.get(), &derived);
- }
-}
-
} // namespace TestWebKitAPI