Changeset 248980 in webkit


Ignore:
Timestamp:
Aug 21, 2019 5:23:15 PM (5 years ago)
Author:
Ryan Haddad
Message:

Unreviewed, rolling out r248970.

Caused
lldb_webkit_unittest.TestSummaryProviders.serial_test_WTFOptionSetProvider_empty
to fail.

Reverted changeset:

"[lldb-webkit] OptionSet summary shows size 0 sometimes for
non-empty set"
https://bugs.webkit.org/show_bug.cgi?id=200742
https://trac.webkit.org/changeset/248970

Location:
trunk/Tools
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Tools/ChangeLog

    r248979 r248980  
     12019-08-21  Ryan Haddad  <ryanhaddad@apple.com>
     2
     3        Unreviewed, rolling out r248970.
     4
     5        Caused
     6        lldb_webkit_unittest.TestSummaryProviders.serial_test_WTFOptionSetProvider_empty
     7        to fail.
     8
     9        Reverted changeset:
     10
     11        "[lldb-webkit] OptionSet summary shows size 0 sometimes for
     12        non-empty set"
     13        https://bugs.webkit.org/show_bug.cgi?id=200742
     14        https://trac.webkit.org/changeset/248970
     15
    1162019-08-21  Jonathan Bedard  <jbedard@apple.com>
    217
  • trunk/Tools/lldb/lldb_webkit.py

    r248970 r248980  
    736736    def __init__(self, valobj, internal_dict):
    737737        self.valobj = valobj
    738         self._elements = []
    739738        self.update()
    740739
     
    752751        pass
    753752
    754     # Subclasses can override this to provide the index that corresponds to the specified name.
    755     # If this method is overridden then it is also expected that _get_child_at_index() will be
    756     # overridden to provide the value for the index returned by this method. Note that the
    757     # returned index must be greater than or equal to self.size in order to avoid breaking
    758     # printing of synthetic children.
    759     def _get_child_index(self, name):
    760         return None
    761 
    762     # Subclasses can override this to provide the SBValue for the specified index. It is only
    763     # meaningful to override this method if _get_child_index() is also overridden.
    764     def _get_child_at_index(self, index):
    765         return None
    766 
    767     @property
    768     def size(self):
    769         return len(self._elements)
    770 
    771     # LLDB overrides
    772753    def has_children(self):
    773754        return bool(self._elements)
     
    777758
    778759    def get_child_index(self, name):
    779         return self._get_child_index(name)
     760        try:
     761            return int(name.lstrip('[').rstrip(']'))
     762        except:
     763            return None
    780764
    781765    def get_child_at_index(self, index):
     
    785769            (name, value) = self._elements[index]
    786770            return self.valobj.CreateValueFromExpression(name, str(value))
    787         return self._get_child_at_index(index)
     771        return None
    788772
    789773    def update(self):
    790774        self._update()
     775
     776        self._elements = []
     777        self.size = 0
    791778
    792779        enumerator_value_to_name_map = self._enumerator_value_to_name_map()
     
    807794            bitmask = bitmask & (bitmask - 1)  # Turn off the rightmost set bit.
    808795        self._elements = elements
     796        self.size = len(elements)
     797
    809798
    810799class WTFOptionSetProvider(FlagEnumerationProvider):
     
    823812    def _update(self):
    824813        self.storage = self.valobj.GetChildMemberWithName('m_storage')  # May be an invalid value.
    825 
    826     def _get_child_index(self, name):
    827         if name == 'm_storage':
    828             return self.size
    829         return None
    830 
    831     def _get_child_at_index(self, index):
    832         if index == self.size:
    833             return self.storage
    834         return None
    835814
    836815
Note: See TracChangeset for help on using the changeset viewer.