<?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>185595</bug_id>
          
          <creation_ts>2018-05-13 16:39:30 -0700</creation_ts>
          <short_desc>Simplified Mach exception handling</short_desc>
          <delta_ts>2018-05-14 09:46:23 -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>New Bugs</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="Geoffrey Garen">ggaren</reporter>
          <assigned_to name="Geoffrey Garen">ggaren</assigned_to>
          <cc>ap</cc>
    
    <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>dbates</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1423471</commentid>
    <comment_count>0</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2018-05-13 16:39:30 -0700</bug_when>
    <thetext>Simplified Mach exception handling</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1423473</commentid>
    <comment_count>1</comment_count>
      <attachid>340279</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2018-05-13 16:55:17 -0700</bug_when>
    <thetext>Created attachment 340279
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1423482</commentid>
    <comment_count>2</comment_count>
      <attachid>340279</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2018-05-13 19:07:53 -0700</bug_when>
    <thetext>Comment on attachment 340279
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=340279&amp;action=review

&gt; Source/WTF/wtf/threads/Signals.cpp:86
&gt; +            UNUSED_PARAM(source); // Silence the leaks tool.

How does this work?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1423508</commentid>
    <comment_count>3</comment_count>
      <attachid>340279</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2018-05-14 00:05:29 -0700</bug_when>
    <thetext>Comment on attachment 340279
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=340279&amp;action=review

r=me with some comments.

&gt; Source/WTF/wtf/threads/Signals.cpp:-89
&gt; -        // We should never cancel our handler since it&apos;s a permanent thing so we don&apos;t add a cancel handler.

Why&apos;d you remove this comment? I think it had useful information...

&gt;&gt; Source/WTF/wtf/threads/Signals.cpp:86
&gt;&gt; +            UNUSED_PARAM(source); // Silence the leaks tool.
&gt; 
&gt; How does this work?

The block will keep a reference to source if you use it inside the block. If we don&apos;t keep a pointer to it leaks thinks we leaked it even though the somewhere inside the mach code someone (I assume) is keeping it around.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1423647</commentid>
    <comment_count>4</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2018-05-14 09:30:50 -0700</bug_when>
    <thetext>&gt; &gt; -        // We should never cancel our handler since it&apos;s a permanent thing so we don&apos;t add a cancel handler.
&gt; 
&gt; Why&apos;d you remove this comment? I think it had useful information...

Sounded a bit tautological to me. I&apos;ll bring it back with an explanation.

&gt; &gt;&gt; Source/WTF/wtf/threads/Signals.cpp:86
&gt; &gt;&gt; +            UNUSED_PARAM(source); // Silence the leaks tool.
&gt; &gt; 
&gt; &gt; How does this work?

I&apos;ll expand this comment too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1423651</commentid>
    <comment_count>5</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2018-05-14 09:45:11 -0700</bug_when>
    <thetext>Committed r231760: &lt;https://trac.webkit.org/changeset/231760&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1423652</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-05-14 09:46:23 -0700</bug_when>
    <thetext>&lt;rdar://problem/40220637&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>340279</attachid>
            <date>2018-05-13 16:55:17 -0700</date>
            <delta_ts>2018-05-14 00:05:40 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-185595-20180513165517.patch</filename>
            <type>text/plain</type>
            <size>4370</size>
            <attacher name="Geoffrey Garen">ggaren</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyMzE3NDUpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDIwIEBACisyMDE4LTA1LTEzICBHZW9mZnJleSBHYXJlbiAgPGdn
YXJlbkBhcHBsZS5jb20+CisKKyAgICAgICAgU2ltcGxpZmllZCBNYWNoIGV4Y2VwdGlvbiBoYW5k
bGluZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg1
NTk1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3
dGYvdGhyZWFkcy9TaWduYWxzLmNwcDoKKyAgICAgICAgKFdURjo6c3RhcnRNYWNoRXhjZXB0aW9u
SGFuZGxlclRocmVhZCk6IFVzZSBtYWNoX21zZ19zZXJ2ZXJfb25jZSBpbnN0ZWFkCisgICAgICAg
IG9mIGR1cGxpY2F0aW5nIGl0cyBmdW5jdGlvbmFsaXR5LiBTZXBhcmF0ZSBlcnJvciBoYW5kbGlu
ZyBsb2dpYyBmcm9tCisgICAgICAgIHByb2dyYW0gbG9naWMgdG8gaGVscCBwcm9ncmFtIGxvZ2lj
IHN0YW5kIG91dC4gVXNlCisgICAgICAgIERJU1BBVENIX1RBUkdFVF9RVUVVRV8qIGluc3RlYWQg
b2YgZXhwbGljaXRseSBmZXRjaGluZyBhIHF1ZXVlLgorCisgICAgICAgIEFsc28sIHdlIGRvbid0
IG5lZWQgdGhlIGhpZ2ggcHJpb3JpdHkgcXVldWUuIFRoZSBrZXJuZWwgZG9uYXRlcyBhCisgICAg
ICAgIHByaW9yaXR5IHZvdWNoZXIgZnJvbSB0aGUgZXhjZXB0aW9uIHRocmVhZCB0byB0aGUgcmVj
ZWl2ZXIgdGhyZWFkLCBhbmQKKyAgICAgICAgbWFjaF9tc2dfc2VydmVyX29uY2UgdGFrZXMgY2Fy
ZSB0byBmb3J3YXJkIHRoYXQgdm91Y2hlci4KKwogMjAxOC0wNS0xMyAgRmlsaXAgUGl6bG8gIDxm
cGl6bG9AYXBwbGUuY29tPgogCiAgICAgICAgIERpc2FibGUgcG9pbnRlciBwb2lzb25pbmcKSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL3RocmVhZHMvU2lnbmFscy5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dURi93dGYvdGhyZWFkcy9TaWduYWxzLmNwcAkocmV2aXNpb24gMjMxNzQzKQorKysgU291
cmNlL1dURi93dGYvdGhyZWFkcy9TaWduYWxzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzMsNDEg
KzczLDIxIEBAIHN0YXRpYyB2b2lkIHN0YXJ0TWFjaEV4Y2VwdGlvbkhhbmRsZXJUaHIKIHsKICAg
ICBzdGF0aWMgc3RkOjpvbmNlX2ZsYWcgb25jZTsKICAgICBzdGQ6OmNhbGxfb25jZShvbmNlLCBb
XSB7Ci0gICAgICAgIGlmIChtYWNoX3BvcnRfYWxsb2NhdGUobWFjaF90YXNrX3NlbGYoKSwgTUFD
SF9QT1JUX1JJR0hUX1JFQ0VJVkUsICZleGNlcHRpb25Qb3J0KSAhPSBLRVJOX1NVQ0NFU1MpCi0g
ICAgICAgICAgICBDUkFTSCgpOworICAgICAgICBrZXJuX3JldHVybl90IGtyID0gbWFjaF9wb3J0
X2FsbG9jYXRlKG1hY2hfdGFza19zZWxmKCksIE1BQ0hfUE9SVF9SSUdIVF9SRUNFSVZFLCAmZXhj
ZXB0aW9uUG9ydCk7CisgICAgICAgIFJFTEVBU0VfQVNTRVJUKGtyID09IEtFUk5fU1VDQ0VTUyk7
CisgICAgICAgIGtyID0gbWFjaF9wb3J0X2luc2VydF9yaWdodChtYWNoX3Rhc2tfc2VsZigpLCBl
eGNlcHRpb25Qb3J0LCBleGNlcHRpb25Qb3J0LCBNQUNIX01TR19UWVBFX01BS0VfU0VORCk7Cisg
ICAgICAgIFJFTEVBU0VfQVNTRVJUKGtyID09IEtFUk5fU1VDQ0VTUyk7CisKKyAgICAgICAgZGlz
cGF0Y2hfc291cmNlX3Qgc291cmNlID0gZGlzcGF0Y2hfc291cmNlX2NyZWF0ZSgKKyAgICAgICAg
ICAgIERJU1BBVENIX1NPVVJDRV9UWVBFX01BQ0hfUkVDViwgZXhjZXB0aW9uUG9ydCwgMCwgRElT
UEFUQ0hfVEFSR0VUX1FVRVVFX0RFRkFVTFQpOworICAgICAgICBSRUxFQVNFX0FTU0VSVChzb3Vy
Y2UpOwogCi0gICAgICAgIGlmIChtYWNoX3BvcnRfaW5zZXJ0X3JpZ2h0KG1hY2hfdGFza19zZWxm
KCksIGV4Y2VwdGlvblBvcnQsIGV4Y2VwdGlvblBvcnQsIE1BQ0hfTVNHX1RZUEVfTUFLRV9TRU5E
KSAhPSBLRVJOX1NVQ0NFU1MpCi0gICAgICAgICAgICBDUkFTSCgpOwotCi0gICAgICAgIC8vIEl0
J3Mgbm90IGNsZWFyIHRoYXQgdGhpcyBuZWVkcyB0byBiZSB0aGUgaGlnaCBwcmlvcml0eSBxdWV1
ZSBidXQgaXQgc2hvdWxkIGJlIHJhcmUgYW5kIGl0IG1pZ2h0IGJlCi0gICAgICAgIC8vIGhhbmRs
aW5nIGV4Y2VwdGlvbnMgZnJvbSBoaWdoIHByaW9yaXR5IHRocmVhZHMuIEFueXdheSwgb3VyIGhh
bmRsZXJzIHNob3VsZCBiZSB2ZXJ5IGZhc3QgYW55d2F5IHNvIGl0J3MKLSAgICAgICAgLy8gcHJv
YmFibHkgbm90IHRoZSBlbmQgb2YgdGhlIHdvcmxkIGlmIHdlIGhhbmRsZSBhIGxvdyBwcmlvcml0
eSBleGNlcHRpb24gb24gYSBoaWdoIHByaW9yaXR5IHF1ZXVlLgotICAgICAgICBkaXNwYXRjaF9x
dWV1ZV90IHF1ZXVlID0gZGlzcGF0Y2hfZ2V0X2dsb2JhbF9xdWV1ZShESVNQQVRDSF9RVUVVRV9Q
UklPUklUWV9ISUdILCAwKTsKLSAgICAgICAgZGlzcGF0Y2hfc291cmNlX3Qgc291cmNlID0gZGlz
cGF0Y2hfc291cmNlX2NyZWF0ZShESVNQQVRDSF9TT1VSQ0VfVFlQRV9NQUNIX1JFQ1YsIGV4Y2Vw
dGlvblBvcnQsIDAsIHF1ZXVlKTsKLSAgICAgICAgUkVMRUFTRV9BU1NFUlRfV0lUSF9NRVNTQUdF
KHNvdXJjZSwgIldlIG5lZWQgdG8gZW5zdXJlIG91ciBzb3VyY2Ugd2FzIGNyZWF0ZWQuIik7Ci0K
LSAgICAgICAgLy8gV2Ugc2hvdWxkIG5ldmVyIGNhbmNlbCBvdXIgaGFuZGxlciBzaW5jZSBpdCdz
IGEgcGVybWFuZW50IHRoaW5nIHNvIHdlIGRvbid0IGFkZCBhIGNhbmNlbCBoYW5kbGVyLgogICAg
ICAgICBkaXNwYXRjaF9zb3VyY2Vfc2V0X2V2ZW50X2hhbmRsZXIoc291cmNlLCBeewotICAgICAg
ICAgICAgLy8gdGhlIGxlYWtzIHRvb2wgd2lsbCBnZXQgbWFkIGF0IHVzIGlmIHdlIGRvbid0IHBy
ZXRlbmQgdG8gd2F0Y2ggdGhlIHNvdXJjZS4KLSAgICAgICAgICAgIFVOVVNFRF9QQVJBTShzb3Vy
Y2UpOwotICAgICAgICAgICAgdW5pb24gTWVzc2FnZSB7Ci0gICAgICAgICAgICAgICAgbWFjaF9t
c2dfaGVhZGVyX3QgaGVhZGVyOwotICAgICAgICAgICAgICAgIGNoYXIgZGF0YVttYXhNZXNzYWdl
U2l6ZV07Ci0gICAgICAgICAgICB9OwotICAgICAgICAgICAgTWVzc2FnZSBtZXNzYWdlSGVhZGVy
SW47Ci0gICAgICAgICAgICBNZXNzYWdlIG1lc3NhZ2VIZWFkZXJPdXQ7Ci0KLSAgICAgICAgICAg
IGtlcm5fcmV0dXJuX3QgbWVzc2FnZVJlc3VsdCA9IG1hY2hfbXNnKCZtZXNzYWdlSGVhZGVySW4u
aGVhZGVyLCBNQUNIX1JDVl9NU0csIDAsIG1heE1lc3NhZ2VTaXplLCBleGNlcHRpb25Qb3J0LCBN
QUNIX01TR19USU1FT1VUX05PTkUsIE1BQ0hfUE9SVF9OVUxMKTsKLSAgICAgICAgICAgIGlmICht
ZXNzYWdlUmVzdWx0ID09IEtFUk5fU1VDQ0VTUykgewotICAgICAgICAgICAgICAgIGlmICghbWFj
aF9leGNfc2VydmVyKCZtZXNzYWdlSGVhZGVySW4uaGVhZGVyLCAmbWVzc2FnZUhlYWRlck91dC5o
ZWFkZXIpKQotICAgICAgICAgICAgICAgICAgICBDUkFTSCgpOwotCi0gICAgICAgICAgICAgICAg
bWVzc2FnZVJlc3VsdCA9IG1hY2hfbXNnKCZtZXNzYWdlSGVhZGVyT3V0LmhlYWRlciwgTUFDSF9T
RU5EX01TRywgbWVzc2FnZUhlYWRlck91dC5oZWFkZXIubXNnaF9zaXplLCAwLCBtZXNzYWdlSGVh
ZGVyT3V0LmhlYWRlci5tc2doX2xvY2FsX3BvcnQsIDAsIE1BQ0hfUE9SVF9OVUxMKTsKLSAgICAg
ICAgICAgICAgICBSRUxFQVNFX0FTU0VSVChtZXNzYWdlUmVzdWx0ID09IEtFUk5fU1VDQ0VTUyk7
Ci0gICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgICAgIGRhdGFMb2dMbigiRmFpbGVk
IHRvIHJlY2VpdmUgbWFjaCBtZXNzYWdlIGR1ZSB0byAiLCBtYWNoX2Vycm9yX3N0cmluZyhtZXNz
YWdlUmVzdWx0KSk7Ci0gICAgICAgICAgICAgICAgUkVMRUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQo
KTsKLSAgICAgICAgICAgIH0KKyAgICAgICAgICAgIFVOVVNFRF9QQVJBTShzb3VyY2UpOyAvLyBT
aWxlbmNlIHRoZSBsZWFrcyB0b29sLgorCisgICAgICAgICAgICBrZXJuX3JldHVybl90IGtyID0g
bWFjaF9tc2dfc2VydmVyX29uY2UoCisgICAgICAgICAgICAgICAgbWFjaF9leGNfc2VydmVyLCBt
YXhNZXNzYWdlU2l6ZSwgZXhjZXB0aW9uUG9ydCwgTUFDSF9NU0dfVElNRU9VVF9OT05FKTsKKyAg
ICAgICAgICAgIFJFTEVBU0VfQVNTRVJUKGtyID09IEtFUk5fU1VDQ0VTUyk7CiAgICAgICAgIH0p
OwogCiAgICAgICAgIGRpc3BhdGNoX3Jlc3VtZShzb3VyY2UpOwo=
</data>
<flag name="review"
          id="358534"
          type_id="1"
          status="+"
          setter="keith_miller"
    />
          </attachment>
      

    </bug>

</bugzilla>