Changeset 261486 in webkit


Ignore:
Timestamp:
May 11, 2020 12:05:00 PM (4 years ago)
Author:
Ryan Haddad
Message:

Unreviewed, reverting r261440.

Caused 6 TestWTF.WTF failures

Reverted changeset:

"Add iterator checking to ListHashSet"
https://bugs.webkit.org/show_bug.cgi?id=211669
https://trac.webkit.org/changeset/261440

Location:
trunk/Source/WTF
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WTF/ChangeLog

    r261484 r261486  
     12020-05-11  Ryan Haddad  <ryanhaddad@apple.com>
     2
     3        Unreviewed, reverting r261440.
     4
     5        Caused 6 TestWTF.WTF failures
     6
     7        Reverted changeset:
     8
     9        "Add iterator checking to ListHashSet"
     10        https://bugs.webkit.org/show_bug.cgi?id=211669
     11        https://trac.webkit.org/changeset/261440
     12
    1132020-05-11  Tetsuharu Ohzeki  <tetsuharu.ohzeki@gmail.com>
    214
  • trunk/Source/WTF/wtf/ListHashSet.h

    r261440 r261486  
    2424#include <wtf/HashSet.h>
    2525
    26 #if CHECK_HASHTABLE_ITERATORS
    27 #include <wtf/WeakPtr.h>
    28 #endif
    29 
    3026namespace WTF {
    3127
     
    5046template<typename HashArg> struct ListHashSetTranslator;
    5147
    52 template<typename ValueArg, typename HashArg = typename DefaultHash<ValueArg>::Hash> class ListHashSet final
    53 #if CHECK_HASHTABLE_ITERATORS
    54     : public CanMakeWeakPtr<ListHashSet<ValueArg, HashArg>>
    55 #endif
    56 {
     48template<typename ValueArg, typename HashArg = typename DefaultHash<ValueArg>::Hash> class ListHashSet final {
    5749    WTF_MAKE_FAST_ALLOCATED;
    5850private:
     
    173165};
    174166
    175 template<typename ValueArg> struct ListHashSetNode
    176 #if CHECK_HASHTABLE_ITERATORS
    177     : CanMakeWeakPtr<ListHashSetNode<ValueArg>>
    178 #endif
    179 {
    180     WTF_MAKE_STRUCT_FAST_ALLOCATED;
    181 
    182     template<typename T> ListHashSetNode(T&& value)
     167template<typename ValueArg> struct ListHashSetNode {
     168    WTF_MAKE_FAST_ALLOCATED;
     169public:
     170    template<typename T>
     171    ListHashSetNode(T&& value)
    183172        : m_value(std::forward<T>(value))
    184173    {
     
    259248        : m_set(set)
    260249        , m_position(position)
    261 #if CHECK_HASHTABLE_ITERATORS
    262         , m_weakSet(makeWeakPtr(set))
    263         , m_weakPosition(makeWeakPtr(position))
    264 #endif
    265250    {
    266251    }
     
    279264    const ValueType* get() const
    280265    {
    281 #if CHECK_HASHTABLE_ITERATORS
    282         ASSERT(m_weakPosition);
    283 #endif
    284266        return std::addressof(m_position->m_value);
    285267    }
     
    290272    const_iterator& operator++()
    291273    {
    292 #if CHECK_HASHTABLE_ITERATORS
    293         ASSERT(m_weakPosition);
    294 #endif
    295274        ASSERT(m_position);
    296275        m_position = m_position->m_next;
    297 #if CHECK_HASHTABLE_ITERATORS
    298         m_weakPosition = makeWeakPtr(m_position);
    299 #endif
    300276        return *this;
    301277    }
     
    305281    const_iterator& operator--()
    306282    {
    307 #if CHECK_HASHTABLE_ITERATORS
    308         ASSERT(m_weakSet);
    309         m_weakPosition.get();
    310 #endif
    311283        ASSERT(m_position != m_set->m_head);
    312284        if (!m_position)
     
    314286        else
    315287            m_position = m_position->m_prev;
    316 #if CHECK_HASHTABLE_ITERATORS
    317         m_weakPosition = makeWeakPtr(m_position);
    318 #endif
    319288        return *this;
    320289    }
     
    335304    Node* node() { return m_position; }
    336305
    337     const ListHashSetType* m_set { nullptr };
    338     Node* m_position { nullptr };
    339 #if CHECK_HASHTABLE_ITERATORS
    340     WeakPtr<const ListHashSetType> m_weakSet;
    341     WeakPtr<Node> m_weakPosition;
    342 #endif
     306    const ListHashSetType* m_set;
     307    Node* m_position;
    343308};
    344309
Note: See TracChangeset for help on using the changeset viewer.