Changeset 235258 in webkit


Ignore:
Timestamp:
Aug 23, 2018 4:36:02 PM (6 years ago)
Author:
david_fenton@apple.com
Message:

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

Location:
trunk
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WTF/ChangeLog

    r235241 r235258  
     12018-08-23  David Fenton  <david_fenton@apple.com>
     2
     3        Unreviewed, rolling out r235129.
     4
     5        broke internal builds
     6
     7        Reverted changeset:
     8
     9        "Allow creating WeakPtrs to const objects"
     10        https://bugs.webkit.org/show_bug.cgi?id=188785
     11        https://trac.webkit.org/changeset/235129
     12
    1132018-08-23  Don Olmstead  <don.olmstead@sony.com>
    214
  • trunk/Source/WTF/wtf/WeakPtr.h

    r235129 r235258  
    112112    }
    113113
    114     WeakPtr<const T> createWeakPtr(const T& ptr) const
    115     {
    116         if (!m_ref)
    117             m_ref = WeakReference<T>::create(const_cast<T*>(&ptr));
    118         return { makeRef(reinterpret_cast<WeakReference<const T>&>(*m_ref)) };
    119     }
    120 
    121114    void revokeAll()
    122115    {
  • trunk/Source/WebCore/ChangeLog

    r235256 r235258  
     12018-08-23  David Fenton  <david_fenton@apple.com>
     2
     3        Unreviewed, rolling out r235129.
     4
     5        broke internal builds
     6
     7        Reverted changeset:
     8
     9        "Allow creating WeakPtrs to const objects"
     10        https://bugs.webkit.org/show_bug.cgi?id=188785
     11        https://trac.webkit.org/changeset/235129
     12
    1132018-08-23  Daniel Bates  <dabates@apple.com>
    214
  • trunk/Source/WebCore/css/MediaQueryEvaluator.cpp

    r235129 r235258  
    111111MediaQueryEvaluator::MediaQueryEvaluator(const String& acceptedMediaType, const Document& document, const RenderStyle* style)
    112112    : m_mediaType(acceptedMediaType)
    113     , m_document(makeWeakPtr(document))
     113    , m_document(makeWeakPtr(const_cast<Document&>(document)))
    114114    , m_style(style)
    115115{
     
    788788        return m_fallbackResult;
    789789
    790     auto& document = *m_document;
     790    Document& document = *m_document;
    791791    auto* frame = document.frame();
    792792    if (!frame || !frame->view() || !m_style)
  • trunk/Source/WebCore/css/MediaQueryEvaluator.h

    r235129 r235258  
    7676private:
    7777    String m_mediaType;
    78     WeakPtr<const Document> m_document;
     78    WeakPtr<Document> m_document;
    7979    const RenderStyle* m_style { nullptr };
    8080    bool m_fallbackResult { false };
  • trunk/Source/WebCore/rendering/FloatingObjects.cpp

    r235129 r235258  
    125125    typedef FloatingObjectInterval IntervalType;
    126126
    127     ComputeFloatOffsetAdapter(const RenderBlockFlow& renderer, LayoutUnit lineTop, LayoutUnit lineBottom, LayoutUnit offset)
     127    ComputeFloatOffsetAdapter(RenderBlockFlow& renderer, LayoutUnit lineTop, LayoutUnit lineBottom, LayoutUnit offset)
    128128        : m_renderer(makeWeakPtr(renderer))
    129129        , m_lineTop(lineTop)
     
    145145    virtual bool updateOffsetIfNeeded(const FloatingObject&) = 0;
    146146
    147     WeakPtr<const RenderBlockFlow> m_renderer;
     147    WeakPtr<RenderBlockFlow> m_renderer;
    148148    LayoutUnit m_lineTop;
    149149    LayoutUnit m_lineBottom;
     
    155155class ComputeFloatOffsetForFloatLayoutAdapter : public ComputeFloatOffsetAdapter<FloatTypeValue> {
    156156public:
    157     ComputeFloatOffsetForFloatLayoutAdapter(const RenderBlockFlow& renderer, LayoutUnit lineTop, LayoutUnit lineBottom, LayoutUnit offset)
     157    ComputeFloatOffsetForFloatLayoutAdapter(RenderBlockFlow& renderer, LayoutUnit lineTop, LayoutUnit lineBottom, LayoutUnit offset)
    158158        : ComputeFloatOffsetAdapter<FloatTypeValue>(renderer, lineTop, lineBottom, offset)
    159159    {
     
    171171class ComputeFloatOffsetForLineLayoutAdapter : public ComputeFloatOffsetAdapter<FloatTypeValue> {
    172172public:
    173     ComputeFloatOffsetForLineLayoutAdapter(const RenderBlockFlow& renderer, LayoutUnit lineTop, LayoutUnit lineBottom, LayoutUnit offset)
     173    ComputeFloatOffsetForLineLayoutAdapter(RenderBlockFlow& renderer, LayoutUnit lineTop, LayoutUnit lineBottom, LayoutUnit offset)
    174174        : ComputeFloatOffsetAdapter<FloatTypeValue>(renderer, lineTop, lineBottom, offset)
    175175    {
     
    186186    typedef FloatingObjectInterval IntervalType;
    187187
    188     FindNextFloatLogicalBottomAdapter(const RenderBlockFlow& renderer, LayoutUnit belowLogicalHeight)
     188    FindNextFloatLogicalBottomAdapter(RenderBlockFlow& renderer, LayoutUnit belowLogicalHeight)
    189189        : m_renderer(makeWeakPtr(renderer))
    190190        , m_belowLogicalHeight(belowLogicalHeight)
     
    200200
    201201private:
    202     WeakPtr<const RenderBlockFlow> m_renderer;
     202    WeakPtr<RenderBlockFlow> m_renderer;
    203203    LayoutUnit m_belowLogicalHeight;
    204204    std::optional<LayoutUnit> m_nextLogicalBottom;
     
    251251    , m_rightObjectsCount(0)
    252252    , m_horizontalWritingMode(renderer.isHorizontalWritingMode())
    253     , m_renderer(makeWeakPtr(renderer))
     253    , m_renderer(makeWeakPtr(const_cast<RenderBlockFlow&>(renderer)))
    254254{
    255255}
  • trunk/Source/WebCore/rendering/FloatingObjects.h

    r235129 r235258  
    162162
    163163private:
    164     const RenderBlockFlow& renderer() const { return *m_renderer; }
     164    RenderBlockFlow& renderer() const { return *m_renderer; }
    165165    void computePlacedFloatsTree();
    166166    const FloatingObjectTree* placedFloatsTree();
     
    174174    unsigned m_rightObjectsCount;
    175175    bool m_horizontalWritingMode;
    176     WeakPtr<const RenderBlockFlow> m_renderer;
     176    WeakPtr<RenderBlockFlow> m_renderer;
    177177};
    178178
  • trunk/Tools/ChangeLog

    r235252 r235258  
     12018-08-23  David Fenton  <david_fenton@apple.com>
     2
     3        Unreviewed, rolling out r235129.
     4
     5        broke internal builds
     6
     7        Reverted changeset:
     8
     9        "Allow creating WeakPtrs to const objects"
     10        https://bugs.webkit.org/show_bug.cgi?id=188785
     11        https://trac.webkit.org/changeset/235129
     12
    1132018-08-23  Jonathan Bedard  <jbedard@apple.com>
    214
  • trunk/Tools/TestWebKitAPI/Tests/WTF/WeakPtr.cpp

    r235129 r235258  
    207207    }
    208208
    209     auto& weakPtrFactory() const { return m_weakPtrFactory; }
     209    auto& weakPtrFactory() { return m_weakPtrFactory; }
    210210
    211211private:
     
    285285}
    286286
    287 TEST(WTF_WeakPtr, DerivedConstructAndAssignConst)
    288 {
    289     const Derived derived;
    290     {
    291         auto derivedWeakPtr = makeWeakPtr(derived);
    292         WeakPtr<const Base> baseWeakPtr { WTFMove(derivedWeakPtr) };
    293         EXPECT_EQ(baseWeakPtr.get(), &derived);
    294         EXPECT_NULL(derivedWeakPtr.get());
    295     }
    296 
    297     {
    298         auto derivedWeakPtr = makeWeakPtr(derived);
    299         WeakPtr<const Base> baseWeakPtr { derivedWeakPtr };
    300         EXPECT_EQ(baseWeakPtr.get(), &derived);
    301         EXPECT_EQ(derivedWeakPtr.get(), &derived);
    302     }
    303 
    304     {
    305         auto derivedWeakPtr = makeWeakPtr(derived);
    306         WeakPtr<const Base> baseWeakPtr;
    307         baseWeakPtr = WTFMove(derivedWeakPtr);
    308         EXPECT_EQ(baseWeakPtr.get(), &derived);
    309         EXPECT_NULL(derivedWeakPtr.get());
    310     }
    311 
    312     {
    313         auto derivedWeakPtr = makeWeakPtr(derived);
    314         WeakPtr<const Base> baseWeakPtr;
    315         baseWeakPtr = derivedWeakPtr;
    316         EXPECT_EQ(baseWeakPtr.get(), &derived);
    317         EXPECT_EQ(derivedWeakPtr.get(), &derived);
    318     }
    319 }
    320 
    321287} // namespace TestWebKitAPI
Note: See TracChangeset for help on using the changeset viewer.