<?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>171716</bug_id>
          
          <creation_ts>2017-05-04 23:39:16 -0700</creation_ts>
          <short_desc>DRT&apos;s setAudioResultCallback() and IDBRequest::setResult() need to acquire the JSLock.</short_desc>
          <delta_ts>2017-05-05 09:15:37 -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>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Mark Lam">mark.lam</reporter>
          <assigned_to name="Mark Lam">mark.lam</assigned_to>
          <cc>alecflett</cc>
    
    <cc>beidson</cc>
    
    <cc>buildbot</cc>
    
    <cc>jsbell</cc>
    
    <cc>saam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1305031</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2017-05-04 23:39:16 -0700</bug_when>
    <thetext>These functions may do JS allocation.  Hence, they need to acquire the JSLock first.

&lt;rdar://problem/30878027&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1305038</commentid>
    <comment_count>1</comment_count>
      <attachid>309148</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2017-05-05 00:03:50 -0700</bug_when>
    <thetext>Created attachment 309148
proposed patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1305138</commentid>
    <comment_count>2</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2017-05-05 09:15:37 -0700</bug_when>
    <thetext>Thanks for the review.  Landed in r216246: &lt;http://trac.webkit.org/r216246&gt;.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>309148</attachid>
            <date>2017-05-05 00:03:50 -0700</date>
            <delta_ts>2017-05-05 00:36:44 -0700</delta_ts>
            <desc>proposed patch.</desc>
            <filename>bug-171716.patch</filename>
            <type>text/plain</type>
            <size>6334</size>
            <attacher name="Mark Lam">mark.lam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIxNjE3MikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIwIEBACisyMDE3LTA1LTA0ICBNYXJrIExh
bSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KKworICAgICAgICBEUlQncyBzZXRBdWRpb1Jlc3VsdENh
bGxiYWNrKCkgYW5kIElEQlJlcXVlc3Q6OnNldFJlc3VsdCgpIG5lZWQgdG8gYWNxdWlyZSB0aGUg
SlNMb2NrLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTcxNzE2CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8zMDg3ODAyNz4KKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHMuICBUaGlzIGlz
c3VlIHdhcyBjYXVnaHQgYnkgZXhpc3RpbmcgdGVzdHMuCisKKyAgICAgICAgSURCUmVxdWVzdDo6
c2V0UmVzdWx0KCkgbmVlZHMgdG8gYWNxdWlyZSB0aGUgSlNMb2NrIGJlZm9yZSBjYWxsaW5nIHRv
SlMoKSAod2hpY2gKKyAgICAgICAgZG9lcyBKUyBjb252ZXJzaW9uIGFuZCB0aGVyZWZvcmUsIHBv
dGVudGlhbGx5IEpTIGFsbG9jYXRpb25zKS4KKworICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRi
L0lEQlJlcXVlc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SURCUmVxdWVzdDo6c2V0UmVzdWx0
KToKKyAgICAgICAgKFdlYkNvcmU6OklEQlJlcXVlc3Q6OnNldFJlc3VsdFRvU3RydWN0dXJlZENs
b25lKToKKwogMjAxNy0wNS0wMyAgRXJpYyBDYXJsc29uICA8ZXJpYy5jYXJsc29uQGFwcGxlLmNv
bT4KIAogICAgICAgICBbTWVkaWFTdHJlYW1dIEFsbG93IGhvc3QgYXBwbGljYXRpb24gdG8gZW5h
YmxlL2Rpc2FibGUgbWVkaWEgY2FwdHVyZQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvSURCUmVxdWVzdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9pbmRleGVkZGIvSURCUmVxdWVzdC5jcHAJKHJldmlzaW9uIDIxNjE3MikKKysrIFNvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlJlcXVlc3QuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNSwgMjAxNiBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUtMjAxNyBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKQEAgLTM3MCw3ICszNzAsOSBAQCB2b2lkIElEQlJlcXVlc3Q6OnNldFJlc3VsdChjb25zdCBJ
REJLZXlECiAKICAgICAvLyBGSVhNRTogVGhpcyBjb252ZXJzaW9uIHNob3VsZCBiZSBkb25lIGxh
emlseSwgd2hlbiBzY3JpcHQgbmVlZHMgdGhlIEpTVmFsdWVzLCBzbyB0aGF0IGdsb2JhbCBvYmpl
Y3QKICAgICAvLyBvZiB0aGUgSURCUmVxdWVzdCB3cmFwcGVyIGNhbiBiZSB1c2VkLCByYXRoZXIg
dGhhbiB0aGUgbGV4aWNhbEdsb2JhbE9iamVjdC4KLSAgICBtX3Jlc3VsdCA9IFJlc3VsdCB7IEpT
Qzo6U3Ryb25nPEpTQzo6VW5rbm93bj4geyBjb250ZXh0LT52bSgpLCB0b0pTPElETElEQktleURh
dGE+KCpzdGF0ZSwgKmpzQ2FzdDxKU0RPTUdsb2JhbE9iamVjdCo+KHN0YXRlLT5sZXhpY2FsR2xv
YmFsT2JqZWN0KCkpLCBrZXlEYXRhKSB9IH07CisgICAgVk0mIHZtID0gY29udGV4dC0+dm0oKTsK
KyAgICBKU0xvY2tIb2xkZXIgbG9jayh2bSk7CisgICAgbV9yZXN1bHQgPSBSZXN1bHQgeyBKU0M6
OlN0cm9uZzxKU0M6OlVua25vd24+IHsgdm0sIHRvSlM8SURMSURCS2V5RGF0YT4oKnN0YXRlLCAq
anNDYXN0PEpTRE9NR2xvYmFsT2JqZWN0Kj4oc3RhdGUtPmxleGljYWxHbG9iYWxPYmplY3QoKSks
IGtleURhdGEpIH0gfTsKIH0KIAogdm9pZCBJREJSZXF1ZXN0OjpzZXRSZXN1bHQoY29uc3QgVmVj
dG9yPElEQktleURhdGE+JiBrZXlEYXRhcykKQEAgLTM4Nyw4ICszODksOSBAQCB2b2lkIElEQlJl
cXVlc3Q6OnNldFJlc3VsdChjb25zdCBWZWN0b3I8CiAKICAgICAvLyBGSVhNRTogVGhpcyBjb252
ZXJzaW9uIHNob3VsZCBiZSBkb25lIGxhemlseSwgd2hlbiBzY3JpcHQgbmVlZHMgdGhlIEpTVmFs
dWVzLCBzbyB0aGF0IGdsb2JhbCBvYmplY3QKICAgICAvLyBvZiB0aGUgSURCUmVxdWVzdCB3cmFw
cGVyIGNhbiBiZSB1c2VkLCByYXRoZXIgdGhhbiB0aGUgbGV4aWNhbEdsb2JhbE9iamVjdC4KLSAg
ICBMb2NrZXI8SlNMb2NrPiBsb2NrZXIoY29udGV4dC0+dm0oKS5hcGlMb2NrKCkpOwotICAgIG1f
cmVzdWx0ID0gUmVzdWx0IHsgSlNDOjpTdHJvbmc8SlNDOjpVbmtub3duPiB7IGNvbnRleHQtPnZt
KCksIHRvSlM8SURMU2VxdWVuY2U8SURMSURCS2V5RGF0YT4+KCpzdGF0ZSwgKmpzQ2FzdDxKU0RP
TUdsb2JhbE9iamVjdCo+KHN0YXRlLT5sZXhpY2FsR2xvYmFsT2JqZWN0KCkpLCBrZXlEYXRhcykg
fSB9OworICAgIFZNJiB2bSA9IGNvbnRleHQtPnZtKCk7CisgICAgSlNMb2NrSG9sZGVyIGxvY2so
dm0pOworICAgIG1fcmVzdWx0ID0gUmVzdWx0IHsgSlNDOjpTdHJvbmc8SlNDOjpVbmtub3duPiB7
IHZtLCB0b0pTPElETFNlcXVlbmNlPElETElEQktleURhdGE+Pigqc3RhdGUsICpqc0Nhc3Q8SlNE
T01HbG9iYWxPYmplY3QqPihzdGF0ZS0+bGV4aWNhbEdsb2JhbE9iamVjdCgpKSwga2V5RGF0YXMp
IH0gfTsKIH0KIAogdm9pZCBJREJSZXF1ZXN0OjpzZXRSZXN1bHQoY29uc3QgVmVjdG9yPElEQlZh
bHVlPiYgdmFsdWVzKQpAQCAtNDA1LDggKzQwOCw5IEBAIHZvaWQgSURCUmVxdWVzdDo6c2V0UmVz
dWx0KGNvbnN0IFZlY3RvcjwKIAogICAgIC8vIEZJWE1FOiBUaGlzIGNvbnZlcnNpb24gc2hvdWxk
IGJlIGRvbmUgbGF6aWx5LCB3aGVuIHNjcmlwdCBuZWVkcyB0aGUgSlNWYWx1ZXMsIHNvIHRoYXQg
Z2xvYmFsIG9iamVjdAogICAgIC8vIG9mIHRoZSBJREJSZXF1ZXN0IHdyYXBwZXIgY2FuIGJlIHVz
ZWQsIHJhdGhlciB0aGFuIHRoZSBsZXhpY2FsR2xvYmFsT2JqZWN0LgotICAgIExvY2tlcjxKU0xv
Y2s+IGxvY2tlcihjb250ZXh0LT52bSgpLmFwaUxvY2soKSk7Ci0gICAgbV9yZXN1bHQgPSBSZXN1
bHQgeyBKU0M6OlN0cm9uZzxKU0M6OlVua25vd24+IHsgY29udGV4dC0+dm0oKSwgdG9KUzxJRExT
ZXF1ZW5jZTxJRExJREJWYWx1ZT4+KCpzdGF0ZSwgKmpzQ2FzdDxKU0RPTUdsb2JhbE9iamVjdCo+
KHN0YXRlLT5sZXhpY2FsR2xvYmFsT2JqZWN0KCkpLCB2YWx1ZXMpIH0gfTsKKyAgICBWTSYgdm0g
PSBjb250ZXh0LT52bSgpOworICAgIEpTTG9ja0hvbGRlciBsb2NrKHZtKTsKKyAgICBtX3Jlc3Vs
dCA9IFJlc3VsdCB7IEpTQzo6U3Ryb25nPEpTQzo6VW5rbm93bj4geyB2bSwgdG9KUzxJRExTZXF1
ZW5jZTxJRExJREJWYWx1ZT4+KCpzdGF0ZSwgKmpzQ2FzdDxKU0RPTUdsb2JhbE9iamVjdCo+KHN0
YXRlLT5sZXhpY2FsR2xvYmFsT2JqZWN0KCkpLCB2YWx1ZXMpIH0gfTsKIH0KIAogdm9pZCBJREJS
ZXF1ZXN0OjpzZXRSZXN1bHQodWludDY0X3QgbnVtYmVyKQpAQCAtNDM2LDcgKzQ0MCw5IEBAIHZv
aWQgSURCUmVxdWVzdDo6c2V0UmVzdWx0VG9TdHJ1Y3R1cmVkQ2wKIAogICAgIC8vIEZJWE1FOiBU
aGlzIGNvbnZlcnNpb24gc2hvdWxkIGJlIGRvbmUgbGF6aWx5LCB3aGVuIHNjcmlwdCBuZWVkcyB0
aGUgSlNWYWx1ZXMsIHNvIHRoYXQgZ2xvYmFsIG9iamVjdAogICAgIC8vIG9mIHRoZSBJREJSZXF1
ZXN0IHdyYXBwZXIgY2FuIGJlIHVzZWQsIHJhdGhlciB0aGFuIHRoZSBsZXhpY2FsR2xvYmFsT2Jq
ZWN0LgotICAgIG1fcmVzdWx0ID0gUmVzdWx0IHsgSlNDOjpTdHJvbmc8SlNDOjpVbmtub3duPiB7
IGNvbnRleHQtPnZtKCksIHRvSlM8SURMSURCVmFsdWU+KCpzdGF0ZSwgKmpzQ2FzdDxKU0RPTUds
b2JhbE9iamVjdCo+KHN0YXRlLT5sZXhpY2FsR2xvYmFsT2JqZWN0KCkpLCB2YWx1ZSkgfSB9Owor
ICAgIFZNJiB2bSA9IGNvbnRleHQtPnZtKCk7CisgICAgSlNMb2NrSG9sZGVyIGxvY2sodm0pOwor
ICAgIG1fcmVzdWx0ID0gUmVzdWx0IHsgSlNDOjpTdHJvbmc8SlNDOjpVbmtub3duPiB7IHZtLCB0
b0pTPElETElEQlZhbHVlPigqc3RhdGUsICpqc0Nhc3Q8SlNET01HbG9iYWxPYmplY3QqPihzdGF0
ZS0+bGV4aWNhbEdsb2JhbE9iamVjdCgpKSwgdmFsdWUpIH0gfTsKIH0KIAogdm9pZCBJREJSZXF1
ZXN0OjpzZXRSZXN1bHRUb1VuZGVmaW5lZCgpCkluZGV4OiBUb29scy9DaGFuZ2VMb2cKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gVG9vbHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMTYyMzUpCisrKyBUb29scy9DaGFu
Z2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxOCBAQAorMjAxNy0wNS0wNCAgTWFyayBM
YW0gIDxtYXJrLmxhbUBhcHBsZS5jb20+CisKKyAgICAgICAgRFJUJ3Mgc2V0QXVkaW9SZXN1bHRD
YWxsYmFjaygpIGFuZCBJREJSZXF1ZXN0OjpzZXRSZXN1bHQoKSBuZWVkIHRvIGFjcXVpcmUgdGhl
IEpTTG9jay4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE3MTcxNgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzA4NzgwMjc+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgc2V0QXVkaW9SZXN1bHRDYWxsYmFj
aygpIG5lZWRzIHRvIGFjcXVpcmUgdGhlIEpTTG9jayBiZWZvcmUgY2FsbGluZyB0b0pTKCkgKHdo
aWNoCisgICAgICAgIGRvZXMgSlMgY29udmVyc2lvbiBhbmQgdGhlcmVmb3JlLCBwb3RlbnRpYWxs
eSBKUyBhbGxvY2F0aW9ucykgYW5kIGFjY2Vzc2luZworICAgICAgICBtZXRob2RzIG9mIGludGVy
bmFsIEpTIGRhdGEgc3RydWN0dXJlcyAod2hpY2ggbWF5IGRvIEpTIGludm9jYXRpb24sIGV0Yyku
CisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9UZXN0UnVubmVyLmNwcDoKKyAgICAgICAgKHNl
dEF1ZGlvUmVzdWx0Q2FsbGJhY2spOgorCiAyMDE3LTA1LTA0ICBCcmlhbiBCdXJnICA8YmJ1cmdA
YXBwbGUuY29tPgogCiAgICAgICAgIGxsZGJfd2Via2l0LnB5IHNob3VsZCBwcm92aWRlIGEgdHlw
ZSBzdW1tYXJ5IGZvciBXZWJDb3JlOjpVUkwKSW5kZXg6IFRvb2xzL0R1bXBSZW5kZXJUcmVlL1Rl
c3RSdW5uZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0R1bXBSZW5kZXJUcmVlL1Rlc3RSdW5u
ZXIuY3BwCShyZXZpc2lvbiAyMTYxNzIpCisrKyBUb29scy9EdW1wUmVuZGVyVHJlZS9UZXN0UnVu
bmVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzQ3LDcgKzM0NywxMCBAQCBzdGF0aWMgSlNWYWx1
ZVJlZiBzZXRBdWRpb1Jlc3VsdENhbGxiYWNrCiAgICAgICAgIHJldHVybiBKU1ZhbHVlTWFrZVVu
ZGVmaW5lZChjb250ZXh0KTsKIAogICAgIC8vIEZJWE1FICgxMjMwNTgpOiBVc2UgYSBKU0MgQVBJ
IHRvIGdldCBidWZmZXIgY29udGVudHMgb25jZSBzdWNoIGlzIGV4cG9zZWQuCi0gICAgSlNDOjpK
U0FycmF5QnVmZmVyVmlldyoganNCdWZmZXJWaWV3ID0gSlNDOjpqc0R5bmFtaWNDYXN0PEpTQzo6
SlNBcnJheUJ1ZmZlclZpZXcqPih0b0pTKGNvbnRleHQpLT52bSgpLCB0b0pTKHRvSlMoY29udGV4
dCksIGFyZ3VtZW50c1swXSkpOworICAgIEpTQzo6Vk0mIHZtID0gdG9KUyhjb250ZXh0KS0+dm0o
KTsKKyAgICBKU0M6OkpTTG9ja0hvbGRlciBsb2NrKHZtKTsKKworICAgIEpTQzo6SlNBcnJheUJ1
ZmZlclZpZXcqIGpzQnVmZmVyVmlldyA9IEpTQzo6anNEeW5hbWljQ2FzdDxKU0M6OkpTQXJyYXlC
dWZmZXJWaWV3Kj4odm0sIHRvSlModG9KUyhjb250ZXh0KSwgYXJndW1lbnRzWzBdKSk7CiAgICAg
QVNTRVJUKGpzQnVmZmVyVmlldyk7CiAgICAgUmVmUHRyPEpTQzo6QXJyYXlCdWZmZXJWaWV3PiBi
dWZmZXJWaWV3ID0ganNCdWZmZXJWaWV3LT51bnNoYXJlZEltcGwoKTsKICAgICBjb25zdCBjaGFy
KiBidWZmZXIgPSBzdGF0aWNfY2FzdDxjb25zdCBjaGFyKj4oYnVmZmVyVmlldy0+YmFzZUFkZHJl
c3MoKSk7Cg==
</data>
<flag name="review"
          id="330316"
          type_id="1"
          status="+"
          setter="saam"
    />
          </attachment>
      

    </bug>

</bugzilla>