<?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>232508</bug_id>
          
          <creation_ts>2021-10-29 14:52:19 -0700</creation_ts>
          <short_desc>Improve error handling in sendWithAsyncReply()</short_desc>
          <delta_ts>2021-10-30 18:25:17 -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>WebKit2</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="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>achristensen</cc>
    
    <cc>darin</cc>
    
    <cc>kkinnunen</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1810261</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-10-29 14:52:19 -0700</bug_when>
    <thetext>Improve error handling in sendWithAsyncReply().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1810264</commentid>
    <comment_count>1</comment_count>
      <attachid>442866</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-10-29 14:58:14 -0700</bug_when>
    <thetext>Created attachment 442866
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1810273</commentid>
    <comment_count>2</comment_count>
      <attachid>442866</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-10-29 15:05:15 -0700</bug_when>
    <thetext>Comment on attachment 442866
Patch

Should we test this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1810276</commentid>
    <comment_count>3</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-10-29 15:09:26 -0700</bug_when>
    <thetext>(In reply to Darin Adler from comment #2)
&gt; Comment on attachment 442866 [details]
&gt; Patch
&gt; 
&gt; Should we test this?

We&apos;d need a way to keep the IPC::Connection object alive after we&apos;ve invalidated it.
If the IPC::Connection object gets destroyed promptly, then there is no issue since its destructor will call the async reply handlers.

I noticed this when working on another patch where I mistakenly leaked a Connection object and one test was timing out because the sendWithAsyncReply() completion handler was never getting called.

I will see if there is an easy way to write a test for this but it is not super trivial.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1810312</commentid>
    <comment_count>4</comment_count>
      <attachid>442879</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-10-29 16:27:55 -0700</bug_when>
    <thetext>Created attachment 442879
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1810313</commentid>
    <comment_count>5</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-10-29 16:28:37 -0700</bug_when>
    <thetext>(In reply to Chris Dumez from comment #4)
&gt; Created attachment 442879 [details]
&gt; Patch

I added an API test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1810467</commentid>
    <comment_count>6</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-10-30 18:24:45 -0700</bug_when>
    <thetext>Committed r285086 (243728@main): &lt;https://commits.webkit.org/243728@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 442879.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1810468</commentid>
    <comment_count>7</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-10-30 18:25:17 -0700</bug_when>
    <thetext>&lt;rdar://problem/84844843&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>442866</attachid>
            <date>2021-10-29 14:58:14 -0700</date>
            <delta_ts>2021-10-29 16:27:53 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-232508-20211029145813.patch</filename>
            <type>text/plain</type>
            <size>3040</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg1MDQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDQxYjNiZGE4ZjBkMTlkNWEx
YzljYTlkYWJiNTU0MjRlNmQxYTNhMTguLmRkZTBiNzBhOGJmYWY1NTZlMmE2ODA3NGRkNzg4YmY2
OGE4OWI5MzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMjEtMTAtMjkgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBJbXByb3ZlIGVycm9yIGhhbmRsaW5n
IGluIHNlbmRXaXRoQXN5bmNSZXBseSgpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMzI1MDgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICAqIFBsYXRmb3JtL0lQQy9Db25uZWN0aW9uLmNwcDoKKyAgICAgICAg
KElQQzo6Q29ubmVjdGlvbjo6aW52YWxpZGF0ZSk6CisgICAgICAgIFdlIHN0b3AgZGVsaXZlcmlu
ZyBtZXNzYWdlcyBhcyBzb29uIGFzIHxtX3ZhbGlkfCBiZWNvbWVzIGZhbHNlLiBJdCBpcworICAg
ICAgICB0aHVzIGEgZ29vZCBpZGVhIHRvIGNhbmNlbCBhbnkgcGVuZGluZyBhc3luYyByZXBseSBo
YW5kbGVycyBhcyBzb29uCisgICAgICAgIGFzIHdlIHNldCBtX2lzVmFsaWQgdG8gZmFsc2UuIFdl
IHdlcmUgZG9pbmcgaXQgY29ycmVjdGx5IGluIGNvbm5lY3Rpb25EaWRDbG9zZSgpCisgICAgICAg
IGJ1dCBub3QgaW4gaW52YWxpZGF0ZSgpLiBUaGUgQ29ubmVjdGlvbiBkZXN0cnVjdG9yIHdvdWxk
IGV2ZW50dWFsbHkgY2FsbAorICAgICAgICB0aGUgYXN5bmMgcmVwbHkgaGFuZGxlcnMuIEhvd2V2
ZXIsIEkgaGF2ZSBub3RpY2VkIHdoZW4gaW52ZXN0aWdhdGluZyBhIGxlYWsKKyAgICAgICAgdGhh
dCB0aGlzIG1heSBkZWxheSB0aGUgY2FsbGluZyBvZiB0aGUgcmVwbHkgaGFuZGxlciBmb3IgYSBs
b25nIHRpbWUgaWYKKyAgICAgICAgc29tZXRoaW5nIGtlZXBzIHRoZSBDb25uZWN0aW9uIGFsaXZl
IChvciBmb3JldmVyIGluIGNhc2Ugb2YgYSBsZWFrKS4KKworICAgICAgICAqIFBsYXRmb3JtL0lQ
Qy9Db25uZWN0aW9uLmg6CisgICAgICAgIChJUEM6OkNvbm5lY3Rpb246OnNlbmRXaXRoQXN5bmNS
ZXBseSk6CisgICAgICAgIFJldHVybiBlYXJseSBpZiB0aGUgY29ubmVjdGlvbiBpcyBubyBsb25n
ZXIgdmFsaWQgYW5kIGNhbGwgdGhlCisgICAgICAgIGNvbXBsZXRpb24gaGFuZGxlciByaWdodCBh
d2F5IChidXQgYXN5bmNocm9ub3VzbHkpLiBQcmV2aW91c2x5LAorICAgICAgICB3ZSdkIHJlZ2lz
dGVyIHRoZSBhc3luYyByZXBseSBoYW5kbGVyIGFuZCB0aGVuIHRoZSBjYWxsIHRvCisgICAgICAg
IHNlbmRNZXNzYWdlKCkgd291bGQgZmFpbC4KKwogMjAyMS0xMC0yOSAgWXVzdWtlIFN1enVraSAg
PHlzdXp1a2lAYXBwbGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJldmVydCByMjg0NDQw
LCByMjg0Mzk3LCByMjg0MzU5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL0lQ
Qy9Db25uZWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vSVBDL0Nvbm5lY3Rpb24u
Y3BwCmluZGV4IGI4YTNlYTY1M2Y0ODRiNDY0MGQzMjM0YzllZDNhN2Y2ODU0MDA2ZTguLjk5ZGU1
MTBjNTdkOWFiODk0MTVjYWIxNzYwOGE1YjBmOTIxMjkwYzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvUGxhdGZvcm0vSVBDL0Nvbm5lY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvUGxh
dGZvcm0vSVBDL0Nvbm5lY3Rpb24uY3BwCkBAIC00MjgsNiArNDI4LDcgQEAgdm9pZCBDb25uZWN0
aW9uOjppbnZhbGlkYXRlKCkKICAgICB9CiAgICAgCiAgICAgbV9pc1ZhbGlkID0gZmFsc2U7Cisg
ICAgY2xlYXJBc3luY1JlcGx5SGFuZGxlcnMoKnRoaXMpOwogCiAgICAgbV9jb25uZWN0aW9uUXVl
dWUtPmRpc3BhdGNoKFtwcm90ZWN0ZWRUaGlzID0gUmVmIHsgKnRoaXMgfV0oKSBtdXRhYmxlIHsK
ICAgICAgICAgcHJvdGVjdGVkVGhpcy0+cGxhdGZvcm1JbnZhbGlkYXRlKCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL0lQQy9Db25uZWN0aW9uLmggYi9Tb3VyY2UvV2ViS2l0
L1BsYXRmb3JtL0lQQy9Db25uZWN0aW9uLmgKaW5kZXggMjIwZTVlYWJjYzQwOTk2OGVmN2JmZjAw
OWVjNzYyODI1YzNlMGM1NS4uNDlmYWNjYjQ2ODcyYjU5NGIwMmY5OGQ2MWRmMDcyMjQ1ODVlNzYz
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9JUEMvQ29ubmVjdGlvbi5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vSVBDL0Nvbm5lY3Rpb24uaApAQCAtNTQ2LDYgKzU0
NiwxMyBAQCB1aW50NjRfdCBDb25uZWN0aW9uOjpzZW5kV2l0aEFzeW5jUmVwbHkoVCYmIG1lc3Nh
Z2UsIEMmJiBjb21wbGV0aW9uSGFuZGxlciwgdWludAogewogICAgIENPTVBJTEVfQVNTRVJUKCFU
Ojppc1N5bmMsIEFzeW5jTWVzc2FnZUV4cGVjdGVkKTsKIAorICAgIGlmICghaXNWYWxpZCgpKSB7
CisgICAgICAgIFJ1bkxvb3A6Om1haW4oKS5kaXNwYXRjaChbY29tcGxldGlvbkhhbmRsZXIgPSBX
VEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oKSBtdXRhYmxlIHsKKyAgICAgICAgICAgIFQ6OmNh
bmNlbFJlcGx5KFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKKyAgICAgICAgfSk7CisgICAg
ICAgIHJldHVybiAwOworICAgIH0KKwogICAgIGF1dG8gZW5jb2RlciA9IG1ha2VVbmlxdWVSZWY8
RW5jb2Rlcj4oVDo6bmFtZSgpLCBkZXN0aW5hdGlvbklEKTsKICAgICB1aW50NjRfdCBsaXN0ZW5l
cklEID0gbmV4dEFzeW5jUmVwbHlIYW5kbGVySUQoKTsKICAgICBhZGRBc3luY1JlcGx5SGFuZGxl
cigqdGhpcywgbGlzdGVuZXJJRCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChEZWNvZGVyKik+KFtj
b21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXSAoRGVjb2Rlciog
ZGVjb2RlcikgbXV0YWJsZSB7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>442879</attachid>
            <date>2021-10-29 16:27:55 -0700</date>
            <delta_ts>2021-10-30 18:24:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-232508-20211029162754.patch</filename>
            <type>text/plain</type>
            <size>7334</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg1MDU3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGIzNGVmMDExZTcyOGYyYzFj
MmMxZTcwNWE2YmJkYjM0NTI5ZDY5ZGIuLjdhNjM2ZWY4YmM0MDZlZDBiOGM1MGZjYWRlZmNhMmNk
ODU0NGQ5NTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzIgQEAKKzIwMjEtMTAtMjkgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBJbXByb3ZlIGVycm9yIGhhbmRsaW5n
IGluIHNlbmRXaXRoQXN5bmNSZXBseSgpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMzI1MDgKKworICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxl
ci4KKworICAgICAgICAqIFBsYXRmb3JtL0lQQy9Db25uZWN0aW9uLmNwcDoKKyAgICAgICAgKElQ
Qzo6Q29ubmVjdGlvbjo6aW52YWxpZGF0ZSk6CisgICAgICAgIFdlIHN0b3AgZGVsaXZlcmluZyBt
ZXNzYWdlcyBhcyBzb29uIGFzIHxtX3ZhbGlkfCBiZWNvbWVzIGZhbHNlLiBJdCBpcworICAgICAg
ICB0aHVzIGEgZ29vZCBpZGVhIHRvIGNhbmNlbCBhbnkgcGVuZGluZyBhc3luYyByZXBseSBoYW5k
bGVycyBhcyBzb29uCisgICAgICAgIGFzIHdlIHNldCBtX2lzVmFsaWQgdG8gZmFsc2UuIFdlIHdl
cmUgZG9pbmcgaXQgY29ycmVjdGx5IGluIGNvbm5lY3Rpb25EaWRDbG9zZSgpCisgICAgICAgIGJ1
dCBub3QgaW4gaW52YWxpZGF0ZSgpLiBUaGUgQ29ubmVjdGlvbiBkZXN0cnVjdG9yIHdvdWxkIGV2
ZW50dWFsbHkgY2FsbAorICAgICAgICB0aGUgYXN5bmMgcmVwbHkgaGFuZGxlcnMuIEhvd2V2ZXIs
IEkgaGF2ZSBub3RpY2VkIHdoZW4gaW52ZXN0aWdhdGluZyBhIGxlYWsKKyAgICAgICAgdGhhdCB0
aGlzIG1heSBkZWxheSB0aGUgY2FsbGluZyBvZiB0aGUgcmVwbHkgaGFuZGxlciBmb3IgYSBsb25n
IHRpbWUgaWYKKyAgICAgICAgc29tZXRoaW5nIGtlZXBzIHRoZSBDb25uZWN0aW9uIGFsaXZlIChv
ciBmb3JldmVyIGluIGNhc2Ugb2YgYSBsZWFrKS4KKworICAgICAgICAqIFBsYXRmb3JtL0lQQy9D
b25uZWN0aW9uLmg6CisgICAgICAgIChJUEM6OkNvbm5lY3Rpb246OnNlbmRXaXRoQXN5bmNSZXBs
eSk6CisgICAgICAgIFJldHVybiBlYXJseSBpZiB0aGUgY29ubmVjdGlvbiBpcyBubyBsb25nZXIg
dmFsaWQgYW5kIGNhbGwgdGhlCisgICAgICAgIGNvbXBsZXRpb24gaGFuZGxlciByaWdodCBhd2F5
IChidXQgYXN5bmNocm9ub3VzbHkpLiBQcmV2aW91c2x5LAorICAgICAgICB3ZSdkIHJlZ2lzdGVy
IHRoZSBhc3luYyByZXBseSBoYW5kbGVyIGFuZCB0aGVuIHRoZSBjYWxsIHRvCisgICAgICAgIHNl
bmRNZXNzYWdlKCkgd291bGQgZmFpbC4KKworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2Ev
V0tXZWJWaWV3Lm1tOgorICAgICAgICAoLVtXS1dlYlZpZXcgX2dldENvbnRlbnRzQXNTdHJpbmdX
aXRoQ29tcGxldGlvbkhhbmRsZXJLZWVwSVBDQ29ubmVjdGlvbkFsaXZlRm9yVGVzdGluZzpdKToK
KyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld1ByaXZhdGUuaDoKKyAgICAg
ICAgQWRkIGhlbHBlciBTUEkgZm9yIEFQSSB0ZXN0LgorCiAyMDIxLTEwLTI5ICBKb2huIFBhc2Nv
ZSAgPGpfcGFzY29lQGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgbGFzdCBtb2RpZmllZCBhbmQg
Y3JlYXRpb24gdGltZSB0byArW19XS1dlYkF1dGhlbnRpY2F0aW9uUGFuZWwgZ2V0QWxsTG9jYWxB
dXRoZW50aWNhdG9yQ3JlZGVudGlhbHNdCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1BsYXRm
b3JtL0lQQy9Db25uZWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vSVBDL0Nvbm5l
Y3Rpb24uY3BwCmluZGV4IGI4YTNlYTY1M2Y0ODRiNDY0MGQzMjM0YzllZDNhN2Y2ODU0MDA2ZTgu
Ljk5ZGU1MTBjNTdkOWFiODk0MTVjYWIxNzYwOGE1YjBmOTIxMjkwYzcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvUGxhdGZvcm0vSVBDL0Nvbm5lY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQvUGxhdGZvcm0vSVBDL0Nvbm5lY3Rpb24uY3BwCkBAIC00MjgsNiArNDI4LDcgQEAgdm9pZCBD
b25uZWN0aW9uOjppbnZhbGlkYXRlKCkKICAgICB9CiAgICAgCiAgICAgbV9pc1ZhbGlkID0gZmFs
c2U7CisgICAgY2xlYXJBc3luY1JlcGx5SGFuZGxlcnMoKnRoaXMpOwogCiAgICAgbV9jb25uZWN0
aW9uUXVldWUtPmRpc3BhdGNoKFtwcm90ZWN0ZWRUaGlzID0gUmVmIHsgKnRoaXMgfV0oKSBtdXRh
YmxlIHsKICAgICAgICAgcHJvdGVjdGVkVGhpcy0+cGxhdGZvcm1JbnZhbGlkYXRlKCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL0lQQy9Db25uZWN0aW9uLmggYi9Tb3VyY2Uv
V2ViS2l0L1BsYXRmb3JtL0lQQy9Db25uZWN0aW9uLmgKaW5kZXggMjIwZTVlYWJjYzQwOTk2OGVm
N2JmZjAwOWVjNzYyODI1YzNlMGM1NS4uNDlmYWNjYjQ2ODcyYjU5NGIwMmY5OGQ2MWRmMDcyMjQ1
ODVlNzYzNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9JUEMvQ29ubmVjdGlv
bi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vSVBDL0Nvbm5lY3Rpb24uaApAQCAtNTQ2
LDYgKzU0NiwxMyBAQCB1aW50NjRfdCBDb25uZWN0aW9uOjpzZW5kV2l0aEFzeW5jUmVwbHkoVCYm
IG1lc3NhZ2UsIEMmJiBjb21wbGV0aW9uSGFuZGxlciwgdWludAogewogICAgIENPTVBJTEVfQVNT
RVJUKCFUOjppc1N5bmMsIEFzeW5jTWVzc2FnZUV4cGVjdGVkKTsKIAorICAgIGlmICghaXNWYWxp
ZCgpKSB7CisgICAgICAgIFJ1bkxvb3A6Om1haW4oKS5kaXNwYXRjaChbY29tcGxldGlvbkhhbmRs
ZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oKSBtdXRhYmxlIHsKKyAgICAgICAgICAg
IFQ6OmNhbmNlbFJlcGx5KFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKKyAgICAgICAgfSk7
CisgICAgICAgIHJldHVybiAwOworICAgIH0KKwogICAgIGF1dG8gZW5jb2RlciA9IG1ha2VVbmlx
dWVSZWY8RW5jb2Rlcj4oVDo6bmFtZSgpLCBkZXN0aW5hdGlvbklEKTsKICAgICB1aW50NjRfdCBs
aXN0ZW5lcklEID0gbmV4dEFzeW5jUmVwbHlIYW5kbGVySUQoKTsKICAgICBhZGRBc3luY1JlcGx5
SGFuZGxlcigqdGhpcywgbGlzdGVuZXJJRCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChEZWNvZGVy
Kik+KFtjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXSAoRGVj
b2RlciogZGVjb2RlcikgbXV0YWJsZSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJ
L0NvY29hL1dLV2ViVmlldy5tbQppbmRleCAyNjgwYjZjNzU0ZGZmZTE3NDliNjc1NTQ4ZThjYzNl
MmQ5NGM2ZjBlLi40MmFkNDdlYWFlNGRmYmU5NjJiNTRjM2M5ZjQ5MWQxNGU3NmUyNjFiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tCisr
KyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW0KQEAgLTI5
NjIsNiArMjk2MiwxNCBAQCAtICh2b2lkKV9nZXRDb250ZW50c0FzU3RyaW5nV2l0aENvbXBsZXRp
b25IYW5kbGVyOih2b2lkICheKShOU1N0cmluZyAqLCBOU0Vycm9yCiAgICAgfSk7CiB9CiAKKy0g
KHZvaWQpX2dldENvbnRlbnRzQXNTdHJpbmdXaXRoQ29tcGxldGlvbkhhbmRsZXJLZWVwSVBDQ29u
bmVjdGlvbkFsaXZlRm9yVGVzdGluZzoodm9pZCAoXikoTlNTdHJpbmcgKiwgTlNFcnJvciAqKSlj
b21wbGV0aW9uSGFuZGxlcgoreworICAgIFRIUk9XX0lGX1NVU1BFTkRFRDsKKyAgICBfcGFnZS0+
Z2V0Q29udGVudHNBc1N0cmluZyhXZWJLaXQ6OkNvbnRlbnRBc1N0cmluZ0luY2x1ZGVzQ2hpbGRG
cmFtZXM6Ok5vLCBbaGFuZGxlciA9IG1ha2VCbG9ja1B0cihjb21wbGV0aW9uSGFuZGxlciksIGNv
bm5lY3Rpb24gPSBSZWZQdHIgeyBfcGFnZS0+cHJvY2VzcygpLmNvbm5lY3Rpb24oKSB9XShTdHJp
bmcgc3RyaW5nKSB7CisgICAgICAgIGhhbmRsZXIoc3RyaW5nLCBuaWwpOworICAgIH0pOworfQor
CiAtICh2b2lkKV9nZXRDb250ZW50c09mQWxsRnJhbWVzQXNTdHJpbmdXaXRoQ29tcGxldGlvbkhh
bmRsZXI6KHZvaWQgKF4pKE5TU3RyaW5nICopKWNvbXBsZXRpb25IYW5kbGVyCiB7CiAgICAgVEhS
T1dfSUZfU1VTUEVOREVEOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJ
L0NvY29hL1dLV2ViVmlld1ByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9D
b2NvYS9XS1dlYlZpZXdQcml2YXRlLmgKaW5kZXggMzYxZWU2NWUzYzI2N2RiM2M3ODUwZTNiOWUw
Y2NjYzc5YmEzYWEzYS4uYmQyMDU5ZWM1NmVjZDE2ODNhYjljNjAyMjg4YjliNzAyY2NlNDU3OCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld1By
aXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3
UHJpdmF0ZS5oCkBAIC0yOTEsNiArMjkxLDcgQEAgZm9yIHRoaXMgcHJvcGVydHkuCiAtICh2b2lk
KV9nZXRNYWluUmVzb3VyY2VEYXRhV2l0aENvbXBsZXRpb25IYW5kbGVyOih2b2lkICheKShOU0Rh
dGEgKiwgTlNFcnJvciAqKSljb21wbGV0aW9uSGFuZGxlcjsKIC0gKHZvaWQpX2dldFdlYkFyY2hp
dmVEYXRhV2l0aENvbXBsZXRpb25IYW5kbGVyOih2b2lkICheKShOU0RhdGEgKiwgTlNFcnJvciAq
KSljb21wbGV0aW9uSGFuZGxlcjsKIC0gKHZvaWQpX2dldENvbnRlbnRzQXNTdHJpbmdXaXRoQ29t
cGxldGlvbkhhbmRsZXI6KHZvaWQgKF4pKE5TU3RyaW5nICosIE5TRXJyb3IgKikpY29tcGxldGlv
bkhhbmRsZXIgV0tfQVBJX0FWQUlMQUJMRShtYWNvcygxMC4xMyksIGlvcygxMS4wKSk7CistICh2
b2lkKV9nZXRDb250ZW50c0FzU3RyaW5nV2l0aENvbXBsZXRpb25IYW5kbGVyS2VlcElQQ0Nvbm5l
Y3Rpb25BbGl2ZUZvclRlc3Rpbmc6KHZvaWQgKF4pKE5TU3RyaW5nICosIE5TRXJyb3IgKikpY29t
cGxldGlvbkhhbmRsZXI7CiAtICh2b2lkKV9nZXRDb250ZW50c09mQWxsRnJhbWVzQXNTdHJpbmdX
aXRoQ29tcGxldGlvbkhhbmRsZXI6KHZvaWQgKF4pKE5TU3RyaW5nICopKWNvbXBsZXRpb25IYW5k
bGVyIFdLX0FQSV9BVkFJTEFCTEUobWFjb3MoMTEuMCksIGlvcygxNC4wKSk7CiAtICh2b2lkKV9n
ZXRDb250ZW50c0FzQXR0cmlidXRlZFN0cmluZ1dpdGhDb21wbGV0aW9uSGFuZGxlcjoodm9pZCAo
XikoTlNBdHRyaWJ1dGVkU3RyaW5nICosIE5TRGljdGlvbmFyeTxOU0F0dHJpYnV0ZWRTdHJpbmdE
b2N1bWVudEF0dHJpYnV0ZUtleSwgaWQ+ICosIE5TRXJyb3IgKikpY29tcGxldGlvbkhhbmRsZXIg
V0tfQVBJX0FWQUlMQUJMRShtYWNvcygxMC4xNSksIGlvcygxMy4wKSk7CiAKZGlmZiAtLWdpdCBh
L1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA0YzNhNjNlN2I1MWViZWU1
NjlmNzQyY2MyM2JkN2U3ZmJiNzQyNTM3Li42YzVmNmU4ZDViMDFkZjBkNjEyYzgxOGM1ZjEyOGVl
OGM0ZDdjM2FkIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjEtMTAtMjkgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFw
cGxlLmNvbT4KKworICAgICAgICBJbXByb3ZlIGVycm9yIGhhbmRsaW5nIGluIHNlbmRXaXRoQXN5
bmNSZXBseSgpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMzI1MDgKKworICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKworICAgICAgICBB
ZGQgQVBJIHRlc3QgY292ZXJhZ2UuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dl
YktpdENvY29hL1dLV2ViVmlld0dldENvbnRlbnRzLm1tOgorICAgICAgICAoVEVTVCk6CisKIDIw
MjEtMTAtMjkgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KIAog
ICAgICAgICBbIE1vbnRlcmV5IGlPUzE1IF0gVGVzdFdlYktpdEFQSS5VUkxTY2hlbWVIYW5kbGVy
LlJhbmdlcyBpcyBhIGNvbnN0YW50IHRpbWVvdXQKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvV0tXZWJWaWV3R2V0Q29udGVudHMubW0gYi9Ub29scy9U
ZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1dLV2ViVmlld0dldENvbnRlbnRzLm1tCmlu
ZGV4IGUxYzY2ZGIzNzkyYjUxMjJiZjJiNTE1YjhmOGYyMzU4ZDNmMjQyMGMuLmM4NjVhZWU3YTgw
N2YxOGM0YmQzYWJkNDYzYWVkZmViYjY5MTZhZGEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvV0tXZWJWaWV3R2V0Q29udGVudHMubW0KKysrIGIvVG9v
bHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9XS1dlYlZpZXdHZXRDb250ZW50cy5t
bQpAQCAtNDksNiArNDksMjMgQEAgVEVTVChXS1dlYlZpZXcsIEdldENvbnRlbnRzU2hvdWxkUmV0
dXJuU3RyaW5nKQogICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6OnJ1bigmZmluaXNoZWQpOwogfQog
CitURVNUKFdLV2ViVmlldywgR2V0Q29udGVudHNTaG91bGRGYWlsV2hlbkNsb3NpbmdQYWdlKQor
eworICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0
V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApXSk7CisKKyAgICBbd2ViVmlldyBz
eW5jaHJvbm91c2x5TG9hZFRlc3RQYWdlTmFtZWQ6QCJzaW1wbGUiXTsKKworICAgIF9fYmxvY2sg
Ym9vbCBmaW5pc2hlZCA9IGZhbHNlOworCisgICAgW3dlYlZpZXcgX2dldENvbnRlbnRzQXNTdHJp
bmdXaXRoQ29tcGxldGlvbkhhbmRsZXJLZWVwSVBDQ29ubmVjdGlvbkFsaXZlRm9yVGVzdGluZzpe
KE5TU3RyaW5nICpzdHJpbmcsIE5TRXJyb3IgKmVycm9yKSB7CisgICAgICAgIGZpbmlzaGVkID0g
dHJ1ZTsKKyAgICB9XTsKKworICAgIFt3ZWJWaWV3IF9jbG9zZV07CisKKyAgICBUZXN0V2ViS2l0
QVBJOjpVdGlsOjpydW4oJmZpbmlzaGVkKTsKK30KKwogVEVTVChXS1dlYlZpZXcsIEdldENvbnRl
bnRzT2ZBbGxGcmFtZXNTaG91bGRSZXR1cm5TdHJpbmcpCiB7CiAgICAgUmV0YWluUHRyPFRlc3RX
S1dlYlZpZXc+IHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdp
dGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDgwMCwgNjAwKV0pOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>