<?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>18060</bug_id>
          
          <creation_ts>2008-03-25 00:00:35 -0700</creation_ts>
          <short_desc>Assertion failure (JSLock not held) beneath JSCallbackObject&lt;Base&gt;::toString</short_desc>
          <delta_ts>2008-03-26 20:37:01 -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>JavaScriptCore</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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="Adam Roben (:aroben)">aroben</reporter>
          <assigned_to name="Adam Roben (:aroben)">aroben</assigned_to>
          <cc>ggaren</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>75079</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-03-25 00:00:35 -0700</bug_when>
    <thetext>If you have a JSObjectRef that has a JSConvertToTypeCallback in its class, JSCallbackObject&lt;Base&gt;::toString will call JSValue::getString with a JSLock::DropAllLocks in scope, causing an assertion failure. I&apos;ve got a fix for this, but need to add a testcase to testapi.c.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>75080</commentid>
    <comment_count>1</comment_count>
      <attachid>20023</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-03-25 00:00:59 -0700</bug_when>
    <thetext>Created attachment 20023
path without changelog or test

Not for review yet</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>75249</commentid>
    <comment_count>2</comment_count>
      <attachid>20073</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-03-25 18:49:50 -0700</bug_when>
    <thetext>Created attachment 20073
Patch + ChangeLog + test</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>75260</commentid>
    <comment_count>3</comment_count>
      <attachid>20073</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2008-03-25 21:42:10 -0700</bug_when>
    <thetext>Comment on attachment 20073
Patch + ChangeLog + test

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>75405</commentid>
    <comment_count>4</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-03-26 20:37:01 -0700</bug_when>
    <thetext>Committed in r31350.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>20023</attachid>
            <date>2008-03-25 00:00:59 -0700</date>
            <delta_ts>2008-03-25 18:49:50 -0700</delta_ts>
            <desc>path without changelog or test</desc>
            <filename>toString-assert.patch</filename>
            <type>text/plain</type>
            <size>971</size>
            <attacher name="Adam Roben (:aroben)">aroben</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrT2JqZWN0RnVuY3Rpb25z
LmggYi9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja09iamVjdEZ1bmN0aW9ucy5oCmluZGV4
IGY3Njc0MDAuLjFhNmQwY2QgMTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxi
YWNrT2JqZWN0RnVuY3Rpb25zLmgKKysrIGIvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tP
YmplY3RGdW5jdGlvbnMuaApAQCAtMzg4LDggKzM4OCwxMiBAQCBVU3RyaW5nIEpTQ2FsbGJhY2tP
YmplY3Q8QmFzZT46OnRvU3RyaW5nKEV4ZWNTdGF0ZSogZXhlYykgY29uc3QKICAgICAKICAgICBm
b3IgKEpTQ2xhc3NSZWYganNDbGFzcyA9IG1fY2xhc3M7IGpzQ2xhc3M7IGpzQ2xhc3MgPSBqc0Ns
YXNzLT5wYXJlbnRDbGFzcykKICAgICAgICAgaWYgKEpTT2JqZWN0Q29udmVydFRvVHlwZUNhbGxi
YWNrIGNvbnZlcnRUb1R5cGUgPSBqc0NsYXNzLT5jb252ZXJ0VG9UeXBlKSB7Ci0gICAgICAgICAg
ICBKU0xvY2s6OkRyb3BBbGxMb2NrcyBkcm9wQWxsTG9ja3M7Ci0gICAgICAgICAgICBpZiAoSlNW
YWx1ZVJlZiB2YWx1ZSA9IGNvbnZlcnRUb1R5cGUoY3R4LCB0aGlzUmVmLCBrSlNUeXBlU3RyaW5n
LCB0b1JlZihleGVjLT5leGNlcHRpb25TbG90KCkpKSkKKyAgICAgICAgICAgIEpTVmFsdWVSZWYg
dmFsdWU7CisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgSlNMb2NrOjpEcm9wQWxsTG9j
a3MgZHJvcEFsbExvY2tzOworICAgICAgICAgICAgICAgIHZhbHVlID0gY29udmVydFRvVHlwZShj
dHgsIHRoaXNSZWYsIGtKU1R5cGVTdHJpbmcsIHRvUmVmKGV4ZWMtPmV4Y2VwdGlvblNsb3QoKSkp
OworICAgICAgICAgICAgfQorICAgICAgICAgICAgaWYgKHZhbHVlKQogICAgICAgICAgICAgICAg
IHJldHVybiB0b0pTKHZhbHVlKS0+Z2V0U3RyaW5nKCk7CiAgICAgICAgIH0KICAgICAgICAgICAg
IAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>20073</attachid>
            <date>2008-03-25 18:49:50 -0700</date>
            <delta_ts>2008-03-25 21:42:10 -0700</delta_ts>
            <desc>Patch + ChangeLog + test</desc>
            <filename>0001--Fix-Bug-18060-Assertion-failure-JSLock-not.patch</filename>
            <type>text/plain</type>
            <size>4269</size>
            <attacher name="Adam Roben (:aroben)">aroben</attacher>
            
              <data encoding="base64">RnJvbSAxNzMyZGQ1OGQ4NDgzYTJjN2M3N2Y3YWEwZTAzZDBjYjY4ZjQ0MjU3IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBZGFtIFJvYmVuIDxhcm9iZW5AYXBwbGUuY29tPgpEYXRlOiBU
dWUsIDI1IE1hciAyMDA4IDE4OjQ5OjExIC0wNzAwClN1YmplY3Q6IFtQRlJdICAgICAgICAgRml4
IEJ1ZyAxODA2MDogQXNzZXJ0aW9uIGZhaWx1cmUgKEpTTG9jayBub3QgaGVsZCkgYmVuZWF0aCBK
U0NhbGxiYWNrT2JqZWN0PEJhc2U+Ojp0b1N0cmluZwoKICAgICAgICA8aHR0cDovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgwNjA+CgogICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgoKICAgICAgICBCdWcgZml4OgoKICAgICAgICAqIEFQSS9KU0NhbGxiYWNrT2Jq
ZWN0RnVuY3Rpb25zLmg6CiAgICAgICAgKEtKUzo6SlNDYWxsYmFja09iamVjdDxCYXNlPjo6dG9T
dHJpbmcpOiBNYWtlIHRoZSBEcm9wQWxsTG9ja3MKICAgICAgICBpbnN0YW5jZSBvbmx5IGJlIGlu
IHNjb3BlIHdoaWxlIGNhbGxpbmcgY29udmVydFRvVHlwZS4KCiAgICAgICAgVGVzdDoKCiAgICAg
ICAgKiBBUEkvdGVzdGFwaS5jOgogICAgICAgIChNeU9iamVjdF9jb252ZXJ0VG9UeXBlKTogSW1w
bGVtZW50IHR5cGUgY29udmVyc2lvbiB0byBzdHJpbmcuCiAgICAgICAgKiBBUEkvdGVzdGFwaS5q
czogQWRkIGEgdGVzdCBmb3IgdHlwZSBjb252ZXJzaW9uIHRvIHN0cmluZy4KLS0tCiBKYXZhU2Ny
aXB0Q29yZS9BUEkvSlNDYWxsYmFja09iamVjdEZ1bmN0aW9ucy5oIHwgICAgOCArKysrKystLQog
SmF2YVNjcmlwdENvcmUvQVBJL3Rlc3RhcGkuYyAgICAgICAgICAgICAgICAgICB8ICAgIDcgKysr
KysrKwogSmF2YVNjcmlwdENvcmUvQVBJL3Rlc3RhcGkuanMgICAgICAgICAgICAgICAgICB8ICAg
IDEgKwogSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICB8ICAg
MjEgKysrKysrKysrKysrKysrKysrKysrCiA0IGZpbGVzIGNoYW5nZWQsIDM1IGluc2VydGlvbnMo
KyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2Fs
bGJhY2tPYmplY3RGdW5jdGlvbnMuaCBiL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrT2Jq
ZWN0RnVuY3Rpb25zLmgKaW5kZXggZjc2NzQwMC4uMWE2ZDBjZCAxMDA2NDQKLS0tIGEvSmF2YVNj
cmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tPYmplY3RGdW5jdGlvbnMuaAorKysgYi9KYXZhU2NyaXB0
Q29yZS9BUEkvSlNDYWxsYmFja09iamVjdEZ1bmN0aW9ucy5oCkBAIC0zODgsOCArMzg4LDEyIEBA
IFVTdHJpbmcgSlNDYWxsYmFja09iamVjdDxCYXNlPjo6dG9TdHJpbmcoRXhlY1N0YXRlKiBleGVj
KSBjb25zdAogICAgIAogICAgIGZvciAoSlNDbGFzc1JlZiBqc0NsYXNzID0gbV9jbGFzczsganND
bGFzczsganNDbGFzcyA9IGpzQ2xhc3MtPnBhcmVudENsYXNzKQogICAgICAgICBpZiAoSlNPYmpl
Y3RDb252ZXJ0VG9UeXBlQ2FsbGJhY2sgY29udmVydFRvVHlwZSA9IGpzQ2xhc3MtPmNvbnZlcnRU
b1R5cGUpIHsKLSAgICAgICAgICAgIEpTTG9jazo6RHJvcEFsbExvY2tzIGRyb3BBbGxMb2NrczsK
LSAgICAgICAgICAgIGlmIChKU1ZhbHVlUmVmIHZhbHVlID0gY29udmVydFRvVHlwZShjdHgsIHRo
aXNSZWYsIGtKU1R5cGVTdHJpbmcsIHRvUmVmKGV4ZWMtPmV4Y2VwdGlvblNsb3QoKSkpKQorICAg
ICAgICAgICAgSlNWYWx1ZVJlZiB2YWx1ZTsKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICBKU0xvY2s6OkRyb3BBbGxMb2NrcyBkcm9wQWxsTG9ja3M7CisgICAgICAgICAgICAgICAgdmFs
dWUgPSBjb252ZXJ0VG9UeXBlKGN0eCwgdGhpc1JlZiwga0pTVHlwZVN0cmluZywgdG9SZWYoZXhl
Yy0+ZXhjZXB0aW9uU2xvdCgpKSk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBpZiAodmFs
dWUpCiAgICAgICAgICAgICAgICAgcmV0dXJuIHRvSlModmFsdWUpLT5nZXRTdHJpbmcoKTsKICAg
ICAgICAgfQogICAgICAgICAgICAgCmRpZmYgLS1naXQgYS9KYXZhU2NyaXB0Q29yZS9BUEkvdGVz
dGFwaS5jIGIvSmF2YVNjcmlwdENvcmUvQVBJL3Rlc3RhcGkuYwppbmRleCBkNmVmOGMyLi4wNTkw
YTU2IDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29yZS9BUEkvdGVzdGFwaS5jCisrKyBiL0phdmFT
Y3JpcHRDb3JlL0FQSS90ZXN0YXBpLmMKQEAgLTIzOCw2ICsyMzgsMTMgQEAgc3RhdGljIEpTVmFs
dWVSZWYgTXlPYmplY3RfY29udmVydFRvVHlwZShKU0NvbnRleHRSZWYgY29udGV4dCwgSlNPYmpl
Y3RSZWYgb2JqZWMKICAgICBzd2l0Y2ggKHR5cGUpIHsKICAgICBjYXNlIGtKU1R5cGVOdW1iZXI6
CiAgICAgICAgIHJldHVybiBKU1ZhbHVlTWFrZU51bWJlcihjb250ZXh0LCAxKTsKKyAgICBjYXNl
IGtKU1R5cGVTdHJpbmc6CisgICAgICAgIHsKKyAgICAgICAgICAgIEpTU3RyaW5nUmVmIHN0cmlu
ZyA9IEpTU3RyaW5nQ3JlYXRlV2l0aFVURjhDU3RyaW5nKCJNeU9iamVjdEFzU3RyaW5nIik7Cisg
ICAgICAgICAgICBKU1ZhbHVlUmVmIHJlc3VsdCA9IEpTVmFsdWVNYWtlU3RyaW5nKGNvbnRleHQs
IHN0cmluZyk7CisgICAgICAgICAgICBKU1N0cmluZ1JlbGVhc2Uoc3RyaW5nKTsKKyAgICAgICAg
ICAgIHJldHVybiByZXN1bHQ7CisgICAgICAgIH0KICAgICBkZWZhdWx0OgogICAgICAgICBicmVh
azsKICAgICB9CmRpZmYgLS1naXQgYS9KYXZhU2NyaXB0Q29yZS9BUEkvdGVzdGFwaS5qcyBiL0ph
dmFTY3JpcHRDb3JlL0FQSS90ZXN0YXBpLmpzCmluZGV4IDUyYmNiNzEuLmY0MzhlYzAgMTAwNjQ0
Ci0tLSBhL0phdmFTY3JpcHRDb3JlL0FQSS90ZXN0YXBpLmpzCisrKyBiL0phdmFTY3JpcHRDb3Jl
L0FQSS90ZXN0YXBpLmpzCkBAIC0xMDAsNiArMTAwLDcgQEAgc2hvdWxkQmUoInR5cGVvZiBteU9i
amVjdCIsICJvYmplY3QiKTsKIHNob3VsZEJlKCJNeU9iamVjdCA/IDEgOiAwIiwgdHJ1ZSk7IC8v
IHRvQm9vbGVhbgogc2hvdWxkQmUoIitNeU9iamVjdCIsIDEpOyAvLyB0b051bWJlcgogc2hvdWxk
QmUoIihNeU9iamVjdC50b1N0cmluZygpKSIsICJbb2JqZWN0IE15T2JqZWN0XSIpOyAvLyB0b1N0
cmluZworc2hvdWxkQmUoIlN0cmluZyhNeU9iamVjdCkiLCAiTXlPYmplY3RBc1N0cmluZyIpOyAv
LyB0eXBlIGNvbnZlcnNpb24gdG8gc3RyaW5nCiBzaG91bGRCZSgiTXlPYmplY3QgLSAwIiwgTmFO
KTsgLy8gdG9QcmltaXRpdmUKIAogc2hvdWxkQmUoInR5cGVvZiBNeUNvbnN0cnVjdG9yIiwgIm9i
amVjdCIpOwpkaWZmIC0tZ2l0IGEvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nIGIvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nCmluZGV4IDQ2MTg1NjkuLjgyODAxMjkgMTAwNjQ0Ci0tLSBhL0phdmFT
Y3JpcHRDb3JlL0NoYW5nZUxvZworKysgYi9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
NSArMSwyNiBAQAogMjAwOC0wMy0yNSAgQWRhbSBSb2JlbiAgPGFyb2JlbkBhcHBsZS5jb20+CiAK
KyAgICAgICAgRml4IEJ1ZyAxODA2MDogQXNzZXJ0aW9uIGZhaWx1cmUgKEpTTG9jayBub3QgaGVs
ZCkgYmVuZWF0aAorICAgICAgICBKU0NhbGxiYWNrT2JqZWN0PEJhc2U+Ojp0b1N0cmluZworCisg
ICAgICAgIDxodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODA2MD4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBCdWcgZml4Ogor
CisgICAgICAgICogQVBJL0pTQ2FsbGJhY2tPYmplY3RGdW5jdGlvbnMuaDoKKyAgICAgICAgKEtK
Uzo6SlNDYWxsYmFja09iamVjdDxCYXNlPjo6dG9TdHJpbmcpOiBNYWtlIHRoZSBEcm9wQWxsTG9j
a3MKKyAgICAgICAgaW5zdGFuY2Ugb25seSBiZSBpbiBzY29wZSB3aGlsZSBjYWxsaW5nIGNvbnZl
cnRUb1R5cGUuCisKKyAgICAgICAgVGVzdDoKKworICAgICAgICAqIEFQSS90ZXN0YXBpLmM6Cisg
ICAgICAgIChNeU9iamVjdF9jb252ZXJ0VG9UeXBlKTogSW1wbGVtZW50IHR5cGUgY29udmVyc2lv
biB0byBzdHJpbmcuCisgICAgICAgICogQVBJL3Rlc3RhcGkuanM6IEFkZCBhIHRlc3QgZm9yIHR5
cGUgY29udmVyc2lvbiB0byBzdHJpbmcuCisKKzIwMDgtMDMtMjUgIEFkYW0gUm9iZW4gIDxhcm9i
ZW5AYXBwbGUuY29tPgorCiAgICAgICAgIEZpeCBCdWcgMTgwNzc6IEludGVncmF0ZSB0ZXN0YXBp
LmMgaW50byB0aGUgV2luZG93cyBidWlsZAogCiAgICAgICAgIDxodHRwOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xODA3Nz4KLS0gCjEuNS40LjQuNTM3LmdiNzVhYQoK
</data>
<flag name="review"
          id="8772"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
      

    </bug>

</bugzilla>