WebKit Bugzilla
Attachment 343789 Details for
Bug 187132
: The lldb vector summary provider always shows zero capacity
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-187132-20180627210329.patch (text/plain), 3.63 KB, created by
Simon Fraser (smfr)
on 2018-06-27 21:03:30 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Simon Fraser (smfr)
Created:
2018-06-27 21:03:30 PDT
Size:
3.63 KB
patch
obsolete
>Subversion Revision: 233297 >diff --git a/Tools/ChangeLog b/Tools/ChangeLog >index 974350b8eedf5cee0df05b523d85a3dd0450d4df..935421f9fec294c9fb2d551c1a2a2dc0f85b9564 100644 >--- a/Tools/ChangeLog >+++ b/Tools/ChangeLog >@@ -1,3 +1,23 @@ >+2018-06-27 Simon Fraser <simon.fraser@apple.com> >+ >+ The lldb vector summary provider always shows zero capacity >+ https://bugs.webkit.org/show_bug.cgi?id=187132 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ WTFVectorProvider in lldb_webkit.py was calling GetChildMemberWithName('m_capacity') >+ on the buffer instead of the valobj. >+ >+ * lldb/lldbWebKitTester/main.cpp: >+ (testSummaryProviders): >+ * lldb/lldb_webkit.py: >+ (WTFVectorProvider.update): >+ * lldb/lldb_webkit_unittest.py: >+ (TestSummaryProviders.serial_test_WTFString_SummaryProvider_16bit_string): >+ (TestSummaryProviders): >+ (TestSummaryProviders.serial_test_WTFVectorProvider_empty_vector): >+ (TestSummaryProviders.serial_test_WTFVectorProvider_vector_size_and_capacity): >+ > 2018-06-01 Daniel Bates <dabates@apple.com> > > Add some tests for lldb_webkit.py >diff --git a/Tools/lldb/lldbWebKitTester/main.cpp b/Tools/lldb/lldbWebKitTester/main.cpp >index 5af82fe58a8bfe09686fc33dab6fb46b714c2900..4e11ab79122619e0aa683b81fa20ab7293148b45 100644 >--- a/Tools/lldb/lldbWebKitTester/main.cpp >+++ b/Tools/lldb/lldbWebKitTester/main.cpp >@@ -54,6 +54,12 @@ static void testSummaryProviders() > String a16BitString = utf16String(u"\u1680Cappuccino\u1680"); > StringImpl* a16BitStringImpl = a16BitString.impl(); > >+ >+ Vector<int> anEmptyVector; >+ Vector<int> aVectorWithOneItem; >+ aVectorWithOneItem.reserveCapacity(16); >+ aVectorWithOneItem.append(1); >+ > breakForTestingSummaryProviders(); > } > >diff --git a/Tools/lldb/lldb_webkit.py b/Tools/lldb/lldb_webkit.py >index e97ef9a6551a02c05026cf5b98c079195f6ba276..34c64c345329e06a75830916907d31c7c74f5376 100644 >--- a/Tools/lldb/lldb_webkit.py >+++ b/Tools/lldb/lldb_webkit.py >@@ -383,7 +383,7 @@ class WTFVectorProvider: > def update(self): > self.buffer = self.valobj.GetChildMemberWithName('m_buffer') > self.size = self.valobj.GetChildMemberWithName('m_size').GetValueAsUnsigned(0) >- self.capacity = self.buffer.GetChildMemberWithName('m_capacity').GetValueAsUnsigned(0) >+ self.capacity = self.valobj.GetChildMemberWithName('m_capacity').GetValueAsUnsigned(0) > self.data_type = self.buffer.GetType().GetPointeeType() > self.data_size = self.data_type.GetByteSize() > >diff --git a/Tools/lldb/lldb_webkit_unittest.py b/Tools/lldb/lldb_webkit_unittest.py >index 7f62f45617cbd95b23b5d46d78d6bade654fbf3d..9140edc4cc8ef6c33c83ca57587e6935fa6fbade 100755 >--- a/Tools/lldb/lldb_webkit_unittest.py >+++ b/Tools/lldb/lldb_webkit_unittest.py >@@ -137,3 +137,13 @@ class TestSummaryProviders(unittest.TestCase): > def serial_test_WTFString_SummaryProvider_16bit_string(self): > summary = lldb_webkit.WTFString_SummaryProvider(self._sbFrame.FindVariable('a16BitString'), {}) > self.assertEqual(summary, u"{ length = 13, contents = '\\u1680Cappuccino\\u1680\\x00' }") >+ >+ # MARK: WTFString_SummaryProvider test cases >+ >+ def serial_test_WTFVectorProvider_empty_vector(self): >+ summary = lldb_webkit.WTFVector_SummaryProvider(self._sbFrame.FindVariable('anEmptyVector'), {}) >+ self.assertEqual(summary, "{ size = 0, capacity = 0 }") >+ >+ def serial_test_WTFVectorProvider_vector_size_and_capacity(self): >+ summary = lldb_webkit.WTFVector_SummaryProvider(self._sbFrame.FindVariable('aVectorWithOneItem'), {}) >+ self.assertEqual(summary, "{ size = 1, capacity = 16 }")
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Flags:
dbates
:
review+
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 187132
: 343789 |
343790