[gdb] Update printers for WTF::CString, JSC::JSString
authorzandobersek@gmail.com <zandobersek@gmail.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 8 Dec 2013 16:51:28 +0000 (16:51 +0000)
committerzandobersek@gmail.com <zandobersek@gmail.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 8 Dec 2013 16:51:28 +0000 (16:51 +0000)
https://bugs.webkit.org/show_bug.cgi?id=124600

Reviewed by Gustavo Noronha Silva.

Update the two printers after they fell behind the changes in implementation.

* gdb/webkit.py:
(WTFCStringPrinter.to_string):
(JSCJSStringPrinter.to_string):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160287 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Tools/ChangeLog
Tools/gdb/webkit.py

index a9faffd..53066d7 100644 (file)
@@ -1,5 +1,18 @@
 2013-12-08  Zan Dobersek  <zdobersek@igalia.com>
 
+        [gdb] Update printers for WTF::CString, JSC::JSString
+        https://bugs.webkit.org/show_bug.cgi?id=124600
+
+        Reviewed by Gustavo Noronha Silva.
+
+        Update the two printers after they fell behind the changes in implementation.
+
+        * gdb/webkit.py:
+        (WTFCStringPrinter.to_string):
+        (JSCJSStringPrinter.to_string):
+
+2013-12-08  Zan Dobersek  <zdobersek@igalia.com>
+
         [webkitpy] Add a WestonDriver unit test
         https://bugs.webkit.org/show_bug.cgi?id=125408
 
index af4a3a9..2a0cb92 100644 (file)
@@ -115,10 +115,9 @@ class WTFAtomicStringPrinter(StringPrinter):
 class WTFCStringPrinter(StringPrinter):
     "Print a WTF::CString"
     def to_string(self):
-        # The CString holds a buffer, which is a refptr to a WTF::CStringBuffer.
-        data = self.val['m_buffer']['m_ptr']['m_data'].cast(gdb.lookup_type('char').pointer())
+        string = (self.val['m_buffer']['m_ptr'] + 1).cast(gdb.lookup_type('char').pointer())
         length = self.val['m_buffer']['m_ptr']['m_length']
-        return ''.join([chr((data + i).dereference()) for i in range(length)])
+        return lstring_to_string(string, length)
 
 
 class WTFStringImplPrinter(StringPrinter):
@@ -164,7 +163,7 @@ class JSCJSStringPrinter(StringPrinter):
         if self.val['m_length'] == 0:
             return ''
 
-        return WTFStringImplPrinter(self.val['m_value']).to_string()
+        return WTFStringPrinter(self.val['m_value']).to_string()
 
 
 class WebCoreQualifiedNamePrinter(StringPrinter):