<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>61149</bug_id>
          
          <creation_ts>2011-05-19 15:13:10 -0700</creation_ts>
          <short_desc>[debug feature] WTFString should have show() method</short_desc>
          <delta_ts>2011-05-26 15:09:59 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Ryosuke Niwa">rniwa</assigned_to>
          <cc>andersca</cc>
    
    <cc>arv</cc>
    
    <cc>darin</cc>
    
    <cc>dglazkov</cc>
    
    <cc>eric</cc>
    
    <cc>leviw</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>406683</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-05-19 15:13:10 -0700</bug_when>
    <thetext>gdb that comes with XCode 3 doesn&apos;t support printing WTFString.  We should add a show() method to WTFString to ease the pain.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>406686</commentid>
    <comment_count>1</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2011-05-19 15:23:52 -0700</bug_when>
    <thetext>Yes please. I&apos;m getting tired of gdb crashing when trying to print WTF Strings using p string.utf8().data();</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>406689</commentid>
    <comment_count>2</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-05-19 15:26:53 -0700</bug_when>
    <thetext>(In reply to comment #1)
&gt; Yes please. I&apos;m getting tired of gdb crashing when trying to print WTF Strings using p string.utf8().data();

Yeah, that gdb bug is driving me nuts.  I don&apos;t remember how many times I had to spend minutes getting into the right breakpoint and the first &quot;p ~~&quot; crashed :(</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>406704</commentid>
    <comment_count>3</comment_count>
      <attachid>94134</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-05-19 15:39:20 -0700</bug_when>
    <thetext>Created attachment 94134
adds String::show</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>406705</commentid>
    <comment_count>4</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-05-19 15:39:59 -0700</bug_when>
    <thetext>I wonder if we should also add it to AtomicString and QualifiedName.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>406718</commentid>
    <comment_count>5</comment_count>
      <attachid>94138</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-05-19 16:11:55 -0700</bug_when>
    <thetext>Created attachment 94138
adds String::show and AtomicString::show</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>406719</commentid>
    <comment_count>6</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-05-19 16:13:35 -0700</bug_when>
    <thetext>Adding it to QualifiedName is a bit tricky because we&apos;d have to export String::show from JSC to WebCore so I&apos;ll put that aside for now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>406725</commentid>
    <comment_count>7</comment_count>
    <who name="Levi Weintraub">leviw</who>
    <bug_when>2011-05-19 16:22:29 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; Adding it to QualifiedName is a bit tricky because we&apos;d have to export String::show from JSC to WebCore so I&apos;ll put that aside for now.

The following in your .gdbinit will allow you to type string_print followed by a WTF::String to print it out:

define wchar_print
        echo &quot;

        set $i = 0
        while (1 == 1)
                set $c = (char)(($arg0)[$i++])
                if ($c == &apos;\0&apos;)
                        loop_break
                end
                printf &quot;%c&quot;, $c
        end

        echo &quot;\n
end

define string_print
	wchar_print ($arg0)
end

Just sayin&apos; ;)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>410872</commentid>
    <comment_count>8</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-05-26 14:56:57 -0700</bug_when>
    <thetext>Any reviewer?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>410875</commentid>
    <comment_count>9</comment_count>
      <attachid>94138</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-05-26 14:57:44 -0700</bug_when>
    <thetext>Comment on attachment 94138
adds String::show and AtomicString::show

OK.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>410878</commentid>
    <comment_count>10</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-05-26 14:58:18 -0700</bug_when>
    <thetext>Since Darin authored many of our string classes, I figure he might like to see this go by, but it looks like you already CC&apos;d him.  Thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>410879</commentid>
    <comment_count>11</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-05-26 14:58:57 -0700</bug_when>
    <thetext>Thanks for the review!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>410898</commentid>
    <comment_count>12</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-05-26 15:09:55 -0700</bug_when>
    <thetext>We can always remove this if it turns out be redundant or useless.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>410899</commentid>
    <comment_count>13</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-05-26 15:09:59 -0700</bug_when>
    <thetext>Committed r87438: &lt;http://trac.webkit.org/changeset/87438&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>94134</attachid>
            <date>2011-05-19 15:39:20 -0700</date>
            <delta_ts>2011-05-19 16:11:51 -0700</delta_ts>
            <desc>adds String::show</desc>
            <filename>bug-61149-20110519153918.patch</filename>
            <type>text/plain</type>
            <size>1720</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gODY4OTkpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAK
KzIwMTEtMDUtMTkgIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW2RlYnVnIGZlYXR1cmVdIFdU
RlN0cmluZyBzaG91bGQgaGF2ZSBzaG93KCkgbWV0aG9kCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02MTE0OQorCisgICAgICAgIEFkZGVkIFN0cmluZzo6
c2hvdyBpbiBOREVCVUcuCisKKyAgICAgICAgKiB3dGYvdGV4dC9XVEZTdHJpbmcuY3BwOgorICAg
ICAgICAoU3RyaW5nOjpzaG93KToKKyAgICAgICAgKiB3dGYvdGV4dC9XVEZTdHJpbmcuaDoKKwog
MjAxMS0wNS0xOSAgT2xpdmVyIEh1bnQgIDxvbGl2ZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFJl
dmlld2VkIGJ5IEdlb2ZmcmV5IEdhcmVuLgpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3d0
Zi90ZXh0L1dURlN0cmluZy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3Jl
L3d0Zi90ZXh0L1dURlN0cmluZy5jcHAJKHJldmlzaW9uIDg2ODg5KQorKysgU291cmNlL0phdmFT
Y3JpcHRDb3JlL3d0Zi90ZXh0L1dURlN0cmluZy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTk2NCw2
ICs5NjQsMTEgQEAgU3RyaW5nKiBzdHJpbmcoY29uc3QgY2hhciopOwogVmVjdG9yPGNoYXI+IGFz
Y2lpRGVidWcoU3RyaW5nSW1wbCogaW1wbCk7CiBWZWN0b3I8Y2hhcj4gYXNjaWlEZWJ1ZyhTdHJp
bmcmIHN0cmluZyk7CiAKK3ZvaWQgU3RyaW5nOjpzaG93KCkKK3sKKyAgICBmcHJpbnRmKHN0ZGVy
ciwgIiVzXG4iLCBhc2NpaURlYnVnKGltcGwoKSkuZGF0YSgpKTsKK30KKwogU3RyaW5nKiBzdHJp
bmcoY29uc3QgY2hhciogcykKIHsKICAgICAvLyBsZWFrcyBtZW1vcnkhCkluZGV4OiBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd3RmL3RleHQvV1RGU3RyaW5nLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L0phdmFTY3JpcHRDb3JlL3d0Zi90ZXh0L1dURlN0cmluZy5oCShyZXZpc2lvbiA4Njg4OSkKKysr
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS93dGYvdGV4dC9XVEZTdHJpbmcuaAkod29ya2luZyBjb3B5
KQpAQCAtMzQ3LDYgKzM0NywxMCBAQCBwdWJsaWM6CiAgICAgU3RyaW5nKFdURjo6SGFzaFRhYmxl
RGVsZXRlZFZhbHVlVHlwZSkgOiBtX2ltcGwoV1RGOjpIYXNoVGFibGVEZWxldGVkVmFsdWUpIHsg
fQogICAgIGJvb2wgaXNIYXNoVGFibGVEZWxldGVkVmFsdWUoKSBjb25zdCB7IHJldHVybiBtX2lt
cGwuaXNIYXNoVGFibGVEZWxldGVkVmFsdWUoKTsgfQogCisjaWZuZGVmIE5ERUJVRworICAgIHZv
aWQgc2hvdygpOworI2VuZGlmCisKIHByaXZhdGU6CiAgICAgUmVmUHRyPFN0cmluZ0ltcGw+IG1f
aW1wbDsKIH07Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>94138</attachid>
            <date>2011-05-19 16:11:55 -0700</date>
            <delta_ts>2011-05-26 14:57:44 -0700</delta_ts>
            <desc>adds String::show and AtomicString::show</desc>
            <filename>bug-61149-20110519161154.patch</filename>
            <type>text/plain</type>
            <size>2773</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gODY5MDMpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTkgQEAK
KzIwMTEtMDUtMTkgIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW2RlYnVnIGZlYXR1cmVdIFdU
RlN0cmluZyBzaG91bGQgaGF2ZSBzaG93KCkgbWV0aG9kCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02MTE0OQorCisgICAgICAgIEFkZGVkIFN0cmluZzo6
c2hvdyBhbmQgQXRvbWljU3RyaW5nOjpzaG93IGluIE5ERUJVRy4KKworICAgICAgICAqIHd0Zi90
ZXh0L0F0b21pY1N0cmluZy5jcHA6CisgICAgICAgIChXVEY6OkF0b21pY1N0cmluZzo6c2hvdyk6
CisgICAgICAgICogd3RmL3RleHQvQXRvbWljU3RyaW5nLmg6CisgICAgICAgICogd3RmL3RleHQv
V1RGU3RyaW5nLmNwcDoKKyAgICAgICAgKFN0cmluZzo6c2hvdyk6CisgICAgICAgICogd3RmL3Rl
eHQvV1RGU3RyaW5nLmg6CisKIDIwMTEtMDUtMTkgIE9saXZlciBIdW50ICA8b2xpdmVyQGFwcGxl
LmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBHZW9mZnJleSBHYXJlbi4KSW5kZXg6IFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93dGYvdGV4dC9BdG9taWNTdHJpbmcuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS93dGYvdGV4dC9BdG9taWNTdHJpbmcuY3BwCShyZXZpc2lv
biA4Njg4OSkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS93dGYvdGV4dC9BdG9taWNTdHJpbmcu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zNjUsNCArMzY1LDExIEBAIEF0b21pY1N0cmluZyBBdG9t
aWNTdHJpbmc6OmZyb21VVEY4SW50ZXIKICAgICByZXR1cm4gYXRvbWljU3RyaW5nOwogfQogCisj
aWZuZGVmIE5ERUJVRwordm9pZCBBdG9taWNTdHJpbmc6OnNob3coKQoreworICAgIG1fc3RyaW5n
LnNob3coKTsKK30KKyNlbmRpZgorCiB9IC8vIG5hbWVzcGFjZSBXVEYKSW5kZXg6IFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS93dGYvdGV4dC9BdG9taWNTdHJpbmcuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd3RmL3RleHQvQXRvbWljU3RyaW5nLmgJKHJldmlzaW9uIDg2ODg5
KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi90ZXh0L0F0b21pY1N0cmluZy5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xMTMsNiArMTEzLDkgQEAgcHVibGljOgogICAgIHN0YXRpYyBBdG9taWNT
dHJpbmcgZnJvbVVURjgoY29uc3QgY2hhciosIHNpemVfdCk7CiAgICAgc3RhdGljIEF0b21pY1N0
cmluZyBmcm9tVVRGOChjb25zdCBjaGFyKik7CiAKKyNpZm5kZWYgTkRFQlVHCisgICAgdm9pZCBz
aG93KCk7CisjZW5kaWYKIHByaXZhdGU6CiAgICAgU3RyaW5nIG1fc3RyaW5nOwogICAgIApJbmRl
eDogU291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi90ZXh0L1dURlN0cmluZy5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi90ZXh0L1dURlN0cmluZy5jcHAJKHJldmlz
aW9uIDg2ODg5KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi90ZXh0L1dURlN0cmluZy5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTk2NCw2ICs5NjQsMTEgQEAgU3RyaW5nKiBzdHJpbmcoY29u
c3QgY2hhciopOwogVmVjdG9yPGNoYXI+IGFzY2lpRGVidWcoU3RyaW5nSW1wbCogaW1wbCk7CiBW
ZWN0b3I8Y2hhcj4gYXNjaWlEZWJ1ZyhTdHJpbmcmIHN0cmluZyk7CiAKK3ZvaWQgU3RyaW5nOjpz
aG93KCkKK3sKKyAgICBmcHJpbnRmKHN0ZGVyciwgIiVzXG4iLCBhc2NpaURlYnVnKGltcGwoKSku
ZGF0YSgpKTsKK30KKwogU3RyaW5nKiBzdHJpbmcoY29uc3QgY2hhciogcykKIHsKICAgICAvLyBs
ZWFrcyBtZW1vcnkhCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvd3RmL3RleHQvV1RGU3Ry
aW5nLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi90ZXh0L1dURlN0
cmluZy5oCShyZXZpc2lvbiA4Njg4OSkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS93dGYvdGV4
dC9XVEZTdHJpbmcuaAkod29ya2luZyBjb3B5KQpAQCAtMzQ3LDYgKzM0NywxMCBAQCBwdWJsaWM6
CiAgICAgU3RyaW5nKFdURjo6SGFzaFRhYmxlRGVsZXRlZFZhbHVlVHlwZSkgOiBtX2ltcGwoV1RG
OjpIYXNoVGFibGVEZWxldGVkVmFsdWUpIHsgfQogICAgIGJvb2wgaXNIYXNoVGFibGVEZWxldGVk
VmFsdWUoKSBjb25zdCB7IHJldHVybiBtX2ltcGwuaXNIYXNoVGFibGVEZWxldGVkVmFsdWUoKTsg
fQogCisjaWZuZGVmIE5ERUJVRworICAgIHZvaWQgc2hvdygpOworI2VuZGlmCisKIHByaXZhdGU6
CiAgICAgUmVmUHRyPFN0cmluZ0ltcGw+IG1faW1wbDsKIH07Cg==
</data>
<flag name="review"
          id="87405"
          type_id="1"
          status="+"
          setter="eric"
    />
          </attachment>
      

    </bug>

</bugzilla>