<?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>188084</bug_id>
          
          <creation_ts>2018-07-26 15:53:55 -0700</creation_ts>
          <short_desc>It should be possible to use WTF::CallbackAggregator from a background thread</short_desc>
          <delta_ts>2018-08-02 16:19:40 -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>Web Template Framework</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=188283</see_also>
          <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>benjamin</cc>
    
    <cc>cgarcia</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wilander</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1445580</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2018-07-26 15:53:55 -0700</bug_when>
    <thetext>It should be possible to use WTF::CallbackAggregator from a background thread. John needs it for ITP code which lives on a background queue. The CallbackAggregator destructor currently always calls the CompletionHandler on the main thread no matter what.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1445596</commentid>
    <comment_count>1</comment_count>
      <attachid>345889</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2018-07-26 16:47:04 -0700</bug_when>
    <thetext>Created attachment 345889
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1445609</commentid>
    <comment_count>2</comment_count>
      <attachid>345889</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-07-26 18:24:40 -0700</bug_when>
    <thetext>Comment on attachment 345889
Patch

Clearing flags on attachment: 345889

Committed r234288: &lt;https://trac.webkit.org/changeset/234288&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1445610</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-07-26 18:24:41 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1445611</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-07-26 18:25:30 -0700</bug_when>
    <thetext>&lt;rdar://problem/42646087&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>345889</attachid>
            <date>2018-07-26 16:47:04 -0700</date>
            <delta_ts>2018-07-26 18:24:40 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-188084-20180726164704.patch</filename>
            <type>text/plain</type>
            <size>13164</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM0Mjc5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDUyNzQ4NDk4NzAwODBkMzVmMTlhNjM3
ZmEyMTYwMDJhZGIzZjc3NmYuLjhlMGMyNjg2OTAxYjM0ODhjMjM0OTkzYjNmYjY3MTEyNWQwMmJi
NTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMTgtMDctMjYgIENocmlzIER1bWV6ICA8Y2R1bWV6
QGFwcGxlLmNvbT4KKworICAgICAgICBJdCBzaG91bGQgYmUgcG9zc2libGUgdG8gdXNlIFdURjo6
Q2FsbGJhY2tBZ2dyZWdhdG9yIGZyb20gYSBiYWNrZ3JvdW5kIHRocmVhZAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg4MDg0CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTWFrZSBXVEY6OkNhbGxiYWNrQWdn
cmVnYXRvciB1c2FibGUgb24gYmFja2dyb3VuZCB0aHJlYWRzIGJ5IHVwZGF0aW5nIGl0cyBkZXN0
cnVjdG9yIHRvIGNhbGwgdGhlCisgICAgICAgIGNvbXBsZXRpb24gaGFuZGxlciBvbiB3aGF0ZXZl
ciB0aHJlYWQgaXQgaXMgZGVzdHJveWVkIG9uLCBpbnN0ZWFkIG9mIGFsd2F5cyBkaXNwYXRjaGlu
ZyB0byB0aGUKKyAgICAgICAgbWFpbiB0aHJlYWQgYmVmb3JlIGNhbGxpbmcgdGhlIGNvbXBsZXRp
b24gaGFuZGxlci4KKworICAgICAgICBFeGlzdGluZyBDYWxsYmFja0FnZ3JlZ2F0b3IgdXNlcnMg
dGhhdCBkZWFsIHdpdGggdGhyZWFkcyBoYXZlIGJlZW4gdXBkYXRlZCB0byBtYWtlIHN1cmUgdGhl
eQorICAgICAgICBkZXN0cm95IHRoZSBDYWxsYmFja0FnZ3JlZ2F0b3Igb24gdGhlIGV4cGVjdGVk
IHRocmVhZC4KKworICAgICAgICBUaGlzIHdpbGwgYWxsb3cgdXMgdG8gdXNlIENhbGxiYWNrQWdn
cmVnYXRvciBpbiB0aGUgUmVzb3VyY2VMb2FkU3RhdGlzdGljc01lbW9yeVN0b3JlLCB3aGljaCBs
aXZlcworICAgICAgICBvbiBhIGJhY2tncm91bmQgV29ya1F1ZXVlLgorCisgICAgICAgICogd3Rm
L0NhbGxiYWNrQWdncmVnYXRvci5oOgorICAgICAgICAoV1RGOjpDYWxsYmFja0FnZ3JlZ2F0b3I6
On5DYWxsYmFja0FnZ3JlZ2F0b3IpOgorICAgICAgICAoV1RGOjpDYWxsYmFja0FnZ3JlZ2F0b3I6
OkNhbGxiYWNrQWdncmVnYXRvcik6CisKIDIwMTgtMDctMjYgIFJvc3MgS2lyc2xpbmcgIDxyb3Nz
LmtpcnNsaW5nQHNvbnkuY29tPgogCiAgICAgICAgIFN0cmluZyhWaWV3KSBzaG91bGQgaGF2ZSBh
IHNwbGl0QWxsb3dpbmdFbXB0eUVudHJpZXMgZnVuY3Rpb24gaW5zdGVhZCBvZiBhIGZsYWcgcGFy
YW1ldGVyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCmluZGV4IGU0Yjk1YTk3ODdhYWZhNDQ3ZWQ0ZmY5NGE1ZDc1ZDUxN2U0ODAx
MTguLjdmN2U3NTVlMjAyNjNhNmI5NzY2NGRkZWMxMGI0NzZmN2JmN2IwMzggMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTkgQEAKKzIwMTgtMDctMjYgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNv
bT4KKworICAgICAgICBJdCBzaG91bGQgYmUgcG9zc2libGUgdG8gdXNlIFdURjo6Q2FsbGJhY2tB
Z2dyZWdhdG9yIGZyb20gYSBiYWNrZ3JvdW5kIHRocmVhZAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg4MDg0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBjb2RlIHdhcyBwYXNzaW5nIENhbGxiYWNr
QWdncmVnYXRvciBvYmplY3RzIGZvciBiYWNrZ3JvdW5kIHRocmVhZCBhbmQgbm90IGJlaW5nCisg
ICAgICAgIGNhcmVmdWwgb24gd2hpY2ggdGhyZWFkIHRoZSBDYWxsYmFja0FnZ3JlZ2F0b3IgZ2V0
cyBkZXN0cm95ZWQuIFRoaXMgcGF0Y2ggZml4ZXMgdGhpcworICAgICAgICBzaW5jZSB0aGUgQ2Fs
bGJhY2tBZ2dyZWdhdG9yIGRlc3RydWN0b3Igbm8gbG9uZ2VyIHRha2VzIGNhcmUgb2YgZGlzcGF0
Y2hpbmcgdG8gdGhlCisgICAgICAgIG1haW4gdGhyZWFkLgorCisgICAgICAgICogTmV0d29ya1By
b2Nlc3MvY2FjaGUvQ2FjaGVTdG9yYWdlRW5naW5lLmNwcDoKKyAgICAgICAgKFdlYktpdDo6Q2Fj
aGVTdG9yYWdlOjpFbmdpbmU6OmNsZWFyQWxsQ2FjaGVzKToKKyAgICAgICAgKFdlYktpdDo6Q2Fj
aGVTdG9yYWdlOjpFbmdpbmU6OmNsZWFyQ2FjaGVzRm9yT3JpZ2luKToKKwogMjAxOC0wNy0yNiAg
Um9zcyBLaXJzbGluZyAgPHJvc3Mua2lyc2xpbmdAc29ueS5jb20+CiAKICAgICAgICAgU3RyaW5n
KFZpZXcpIHNob3VsZCBoYXZlIGEgc3BsaXRBbGxvd2luZ0VtcHR5RW50cmllcyBmdW5jdGlvbiBp
bnN0ZWFkIG9mIGEgZmxhZyBwYXJhbWV0ZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL0Nh
bGxiYWNrQWdncmVnYXRvci5oIGIvU291cmNlL1dURi93dGYvQ2FsbGJhY2tBZ2dyZWdhdG9yLmgK
aW5kZXggNTUzYmQ0NTllMWVjMjM0ZGQ3YWQ1ZTY2Yzg5NzI1MTljYmZjMDc4ZC4uNGViNjBlYTNj
NjA4MzA0MmVlMThhN2JmOWVlMTZiZDQ1M2RjYzNhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93
dGYvQ2FsbGJhY2tBZ2dyZWdhdG9yLmgKKysrIGIvU291cmNlL1dURi93dGYvQ2FsbGJhY2tBZ2dy
ZWdhdG9yLmgKQEAgLTM3LDI0ICszNywyNCBAQCBwdWJsaWM6CiAKICAgICB+Q2FsbGJhY2tBZ2dy
ZWdhdG9yKCkKICAgICB7Ci0gICAgICAgIGlmICghbV9jYWxsYmFjaykKLSAgICAgICAgICAgIHJl
dHVybjsKLSAgICAgICAgaWYgKGlzTWFpblRocmVhZCgpKSB7CisgICAgICAgIEFTU0VSVChtX3dh
c0NvbnN0cnVjdGVkT25NYWluVGhyZWFkID09IGlzTWFpblRocmVhZCgpKTsKKyAgICAgICAgaWYg
KG1fY2FsbGJhY2spCiAgICAgICAgICAgICBtX2NhbGxiYWNrKCk7Ci0gICAgICAgICAgICByZXR1
cm47Ci0gICAgICAgIH0KLSAgICAgICAgY2FsbE9uTWFpblRocmVhZChbY2FsbGJhY2sgPSBXVEZN
b3ZlKG1fY2FsbGJhY2spXSAoKSBtdXRhYmxlIHsKLSAgICAgICAgICAgIGNhbGxiYWNrKCk7Ci0g
ICAgICAgIH0pOwogICAgIH0KIAogcHJpdmF0ZToKICAgICBleHBsaWNpdCBDYWxsYmFja0FnZ3Jl
Z2F0b3IoQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNhbGxiYWNrKQogICAgICAgICA6IG1f
Y2FsbGJhY2soV1RGTW92ZShjYWxsYmFjaykpCisjaWYgIUFTU0VSVF9ESVNBQkxFRAorICAgICAg
ICAsIG1fd2FzQ29uc3RydWN0ZWRPbk1haW5UaHJlYWQoaXNNYWluVGhyZWFkKCkpCisjZW5kaWYK
ICAgICB7CiAgICAgfQogCiAgICAgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiBtX2NhbGxiYWNr
OworI2lmICFBU1NFUlRfRElTQUJMRUQKKyAgICBib29sIG1fd2FzQ29uc3RydWN0ZWRPbk1haW5U
aHJlYWQ7CisjZW5kaWYKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdURgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcAppbmRleCBhYzAyZTlhMmUxNTU4
NWFlMDIxMWNjZTc0NGFmZGY3NDdiZWE3NzY2Li44YmZlZmUzNjJhODViZjI1OTQ4NDVhYzI4ZjY0
MDkzM2NhNjg5NjY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05l
dHdvcmtQcm9jZXNzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdv
cmtQcm9jZXNzLmNwcApAQCAtNTc4LDcgKzU3OCw3IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3M6OmRl
bGV0ZVdlYnNpdGVEYXRhKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgT3B0aW9uU2V0PFdlYnNp
CiAgICAgfSk7CiAKICAgICBpZiAod2Vic2l0ZURhdGFUeXBlcy5jb250YWlucyhXZWJzaXRlRGF0
YVR5cGU6OkRPTUNhY2hlKSkKLSAgICAgICAgQ2FjaGVTdG9yYWdlOjpFbmdpbmU6OmNsZWFyQWxs
Q2FjaGVzKHNlc3Npb25JRCwgY2xlYXJUYXNrc0hhbmRsZXIuY29weVJlZigpKTsKKyAgICAgICAg
Q2FjaGVTdG9yYWdlOjpFbmdpbmU6OmNsZWFyQWxsQ2FjaGVzKHNlc3Npb25JRCwgW2NsZWFyVGFz
a3NIYW5kbGVyID0gY2xlYXJUYXNrc0hhbmRsZXIuY29weVJlZigpXSB7IH0pOwogCiAgICAgaWYg
KHdlYnNpdGVEYXRhVHlwZXMuY29udGFpbnMoV2Vic2l0ZURhdGFUeXBlOjpEaXNrQ2FjaGUpICYm
ICFzZXNzaW9uSUQuaXNFcGhlbWVyYWwoKSkKICAgICAgICAgY2xlYXJEaXNrQ2FjaGUobW9kaWZp
ZWRTaW5jZSwgW2NsZWFyVGFza3NIYW5kbGVyID0gV1RGTW92ZShjbGVhclRhc2tzSGFuZGxlcild
IHsgfSk7CkBAIC02MjIsNyArNjIyLDcgQEAgdm9pZCBOZXR3b3JrUHJvY2Vzczo6ZGVsZXRlV2Vi
c2l0ZURhdGFGb3JPcmlnaW5zKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgT3B0aW8KIAogICAg
IGlmICh3ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVEYXRhVHlwZTo6RE9NQ2FjaGUp
KSB7CiAgICAgICAgIGZvciAoYXV0byYgb3JpZ2luRGF0YSA6IG9yaWdpbkRhdGFzKQotICAgICAg
ICAgICAgQ2FjaGVTdG9yYWdlOjpFbmdpbmU6OmNsZWFyQ2FjaGVzRm9yT3JpZ2luKHNlc3Npb25J
RCwgU2VjdXJpdHlPcmlnaW5EYXRhIHsgb3JpZ2luRGF0YSB9LCBjbGVhclRhc2tzSGFuZGxlci5j
b3B5UmVmKCkpOworICAgICAgICAgICAgQ2FjaGVTdG9yYWdlOjpFbmdpbmU6OmNsZWFyQ2FjaGVz
Rm9yT3JpZ2luKHNlc3Npb25JRCwgU2VjdXJpdHlPcmlnaW5EYXRhIHsgb3JpZ2luRGF0YSB9LCBb
Y2xlYXJUYXNrc0hhbmRsZXIgPSBjbGVhclRhc2tzSGFuZGxlci5jb3B5UmVmKCldIHsgfSk7CiAg
ICAgfQogCiAgICAgaWYgKHdlYnNpdGVEYXRhVHlwZXMuY29udGFpbnMoV2Vic2l0ZURhdGFUeXBl
OjpEaXNrQ2FjaGUpICYmICFzZXNzaW9uSUQuaXNFcGhlbWVyYWwoKSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY2FjaGUvQ2FjaGVTdG9yYWdlRW5naW5lLmNwcCBi
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY2FjaGUvQ2FjaGVTdG9yYWdlRW5naW5lLmNw
cAppbmRleCA0OTQ2ZjM5NjEyM2VjMTY2YTZjNDc3MjE0ZjRiZDFmZGI4NjMzNTAwLi5iOTliODg4
NGU4NjAzYzYyNDI1NDk0YTI0MmIwMTRkNjI0MjkwMDY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL2NhY2hlL0NhY2hlU3RvcmFnZUVuZ2luZS5jcHAKKysrIGIvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9DYWNoZVN0b3JhZ2VFbmdpbmUuY3BwCkBA
IC0xODMsMTcgKzE4MywxNyBAQCB2b2lkIEVuZ2luZTo6cmVwcmVzZW50YXRpb24oUEFMOjpTZXNz
aW9uSUQgc2Vzc2lvbklELCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFN0cgogICAgIH0pOwogfQog
Ci12b2lkIEVuZ2luZTo6Y2xlYXJBbGxDYWNoZXMoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBS
ZWY8V1RGOjpDYWxsYmFja0FnZ3JlZ2F0b3I+JiYgYWdncmVnYXRvcikKK3ZvaWQgRW5naW5lOjpj
bGVhckFsbENhY2hlcyhQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKIHsKLSAgICBmcm9tKHNlc3Npb25JRCwgW2Fn
Z3JlZ2F0b3IgPSBXVEZNb3ZlKGFnZ3JlZ2F0b3IpXShhdXRvJiBlbmdpbmUpIG11dGFibGUgewot
ICAgICAgICBlbmdpbmUuY2xlYXJBbGxDYWNoZXMoYWdncmVnYXRvcik7CisgICAgZnJvbShzZXNz
aW9uSUQsIFtjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShh
dXRvJiBlbmdpbmUpIG11dGFibGUgeworICAgICAgICBlbmdpbmUuY2xlYXJBbGxDYWNoZXMoV1RG
TW92ZShjb21wbGV0aW9uSGFuZGxlcikpOwogICAgIH0pOwogfQogCi12b2lkIEVuZ2luZTo6Y2xl
YXJDYWNoZXNGb3JPcmlnaW4oUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBXZWJDb3JlOjpTZWN1
cml0eU9yaWdpbkRhdGEmJiBvcmlnaW5EYXRhLCBSZWY8V1RGOjpDYWxsYmFja0FnZ3JlZ2F0b3I+
JiYgYWdncmVnYXRvcikKK3ZvaWQgRW5naW5lOjpjbGVhckNhY2hlc0Zvck9yaWdpbihQQUw6OlNl
c3Npb25JRCBzZXNzaW9uSUQsIFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSYmIG9yaWdpbkRh
dGEsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKIHsKLSAg
ICBmcm9tKHNlc3Npb25JRCwgW29yaWdpbkRhdGEgPSBXVEZNb3ZlKG9yaWdpbkRhdGEpLCBhZ2dy
ZWdhdG9yID0gV1RGTW92ZShhZ2dyZWdhdG9yKV0oYXV0byYgZW5naW5lKSBtdXRhYmxlIHsKLSAg
ICAgICAgZW5naW5lLmNsZWFyQ2FjaGVzRm9yT3JpZ2luKG9yaWdpbkRhdGEsIGFnZ3JlZ2F0b3Ip
OworICAgIGZyb20oc2Vzc2lvbklELCBbb3JpZ2luRGF0YSA9IFdURk1vdmUob3JpZ2luRGF0YSks
IGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildKGF1dG8mIGVu
Z2luZSkgbXV0YWJsZSB7CisgICAgICAgIGVuZ2luZS5jbGVhckNhY2hlc0Zvck9yaWdpbihvcmln
aW5EYXRhLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CiAgICAgfSk7CiB9CiAKQEAgLTUx
Niw0OSArNTE2LDg3IEBAIHZvaWQgRW5naW5lOjpmZXRjaEVudHJpZXMoYm9vbCBzaG91bGRDb21w
dXRlU2l6ZSwgV1RGOjpDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFZlCiAgICAgfQogfQogCi12b2lk
IEVuZ2luZTo6Y2xlYXJBbGxDYWNoZXMoQ2FsbGJhY2tBZ2dyZWdhdG9yJiB0YXNrSGFuZGxlcikK
K3ZvaWQgRW5naW5lOjpjbGVhckFsbENhY2hlcyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYg
Y29tcGxldGlvbkhhbmRsZXIpCiB7CisgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKwor
ICAgIGF1dG8gY2FsbGJhY2tBZ2dyZWdhdG9yID0gQ2FsbGJhY2tBZ2dyZWdhdG9yOjpjcmVhdGUo
V1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworCiAgICAgZm9yIChhdXRvJiBjYWNoZXMgOiBt
X2NhY2hlcy52YWx1ZXMoKSkKLSAgICAgICAgY2FjaGVzLT5jbGVhcihbdGFza0hhbmRsZXIgPSBt
YWtlUmVmKHRhc2tIYW5kbGVyKV0geyB9KTsKKyAgICAgICAgY2FjaGVzLT5jbGVhcihbY2FsbGJh
Y2tBZ2dyZWdhdG9yID0gY2FsbGJhY2tBZ2dyZWdhdG9yLmNvcHlSZWYoKV0geyB9KTsKIAogICAg
IGlmICghc2hvdWxkUGVyc2lzdCgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBtX2lvUXVldWUt
PmRpc3BhdGNoKFtwYXRoID0gbV9yb290UGF0aC5pc29sYXRlZENvcHkoKSwgdGFza0hhbmRsZXIg
PSBtYWtlUmVmKHRhc2tIYW5kbGVyKV0geworICAgIGNsZWFyQWxsQ2FjaGVzRnJvbURpc2soW2Nh
bGxiYWNrQWdncmVnYXRvciA9IFdURk1vdmUoY2FsbGJhY2tBZ2dyZWdhdG9yKV0geyB9KTsKK30K
Kwordm9pZCBFbmdpbmU6OmNsZWFyQWxsQ2FjaGVzRnJvbURpc2soQ29tcGxldGlvbkhhbmRsZXI8
dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIEFTU0VSVChSdW5Mb29wOjppc01h
aW4oKSk7CisKKyAgICBtX2lvUXVldWUtPmRpc3BhdGNoKFtwYXRoID0gbV9yb290UGF0aC5pc29s
YXRlZENvcHkoKSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVy
KV0oKSBtdXRhYmxlIHsKICAgICAgICAgZm9yIChhdXRvJiBmaWxlbmFtZSA6IFdlYkNvcmU6OkZp
bGVTeXN0ZW06Omxpc3REaXJlY3RvcnkocGF0aCwgIioiKSkgewogICAgICAgICAgICAgaWYgKFdl
YkNvcmU6OkZpbGVTeXN0ZW06OmZpbGVJc0RpcmVjdG9yeShmaWxlbmFtZSwgV2ViQ29yZTo6Rmls
ZVN5c3RlbTo6U2hvdWxkRm9sbG93U3ltYm9saWNMaW5rczo6Tm8pKQogICAgICAgICAgICAgICAg
IGRlbGV0ZURpcmVjdG9yeVJlY3Vyc2l2ZWx5KGZpbGVuYW1lKTsKICAgICAgICAgfQorICAgICAg
ICBSdW5Mb29wOjptYWluKCkuZGlzcGF0Y2goW2NvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShj
b21wbGV0aW9uSGFuZGxlcildIHsKKyAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7Cisg
ICAgICAgIH0pOwogICAgIH0pOwogfQogCi12b2lkIEVuZ2luZTo6Y2xlYXJDYWNoZXNGb3JPcmln
aW4oY29uc3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhJiBvcmlnaW4sIENhbGxiYWNrQWdn
cmVnYXRvciYgdGFza0hhbmRsZXIpCit2b2lkIEVuZ2luZTo6Y2xlYXJDYWNoZXNGb3JPcmlnaW4o
Y29uc3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhJiBvcmlnaW4sIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKIHsKKyAgICBBU1NFUlQoUnVuTG9vcDo6
aXNNYWluKCkpOworCisgICAgYXV0byBjYWxsYmFja0FnZ3JlZ2F0b3IgPSBDYWxsYmFja0FnZ3Jl
Z2F0b3I6OmNyZWF0ZShXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CisKICAgICBmb3IgKGF1
dG8mIGtleVZhbHVlIDogbV9jYWNoZXMpIHsKICAgICAgICAgaWYgKGtleVZhbHVlLmtleS50b3BP
cmlnaW4gPT0gb3JpZ2luIHx8IGtleVZhbHVlLmtleS5jbGllbnRPcmlnaW4gPT0gb3JpZ2luKQot
ICAgICAgICAgICAga2V5VmFsdWUudmFsdWUtPmNsZWFyKFt0YXNrSGFuZGxlciA9IG1ha2VSZWYo
dGFza0hhbmRsZXIpXSB7IH0pOworICAgICAgICAgICAga2V5VmFsdWUudmFsdWUtPmNsZWFyKFtj
YWxsYmFja0FnZ3JlZ2F0b3IgPSBjYWxsYmFja0FnZ3JlZ2F0b3IuY29weVJlZigpXSB7IH0pOwog
ICAgIH0KIAogICAgIGlmICghc2hvdWxkUGVyc2lzdCgpKQogICAgICAgICByZXR1cm47CiAKKyAg
ICBjbGVhckNhY2hlc0Zvck9yaWdpbkZyb21EaXNrKG9yaWdpbiwgW2NhbGxiYWNrQWdncmVnYXRv
ciA9IFdURk1vdmUoY2FsbGJhY2tBZ2dyZWdhdG9yKV0geyB9KTsKK30KKwordm9pZCBFbmdpbmU6
OmNsZWFyQ2FjaGVzRm9yT3JpZ2luRnJvbURpc2soY29uc3QgV2ViQ29yZTo6U2VjdXJpdHlPcmln
aW5EYXRhJiBvcmlnaW4sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFu
ZGxlcikKK3sKKyAgICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOworCisgICAgYXV0byBjYWxs
YmFja0FnZ3JlZ2F0b3IgPSBDYWxsYmFja0FnZ3JlZ2F0b3I6OmNyZWF0ZShXVEZNb3ZlKGNvbXBs
ZXRpb25IYW5kbGVyKSk7CisKICAgICBmb3IgKGF1dG8mIGZvbGRlclBhdGggOiBXZWJDb3JlOjpG
aWxlU3lzdGVtOjpsaXN0RGlyZWN0b3J5KG1fcm9vdFBhdGgsICIqIikpIHsKICAgICAgICAgaWYg
KCFXZWJDb3JlOjpGaWxlU3lzdGVtOjpmaWxlSXNEaXJlY3RvcnkoZm9sZGVyUGF0aCwgV2ViQ29y
ZTo6RmlsZVN5c3RlbTo6U2hvdWxkRm9sbG93U3ltYm9saWNMaW5rczo6Tm8pKQogICAgICAgICAg
ICAgY29udGludWU7Ci0gICAgICAgIENhY2hlczo6cmV0cmlldmVPcmlnaW5Gcm9tRGlyZWN0b3J5
KGZvbGRlclBhdGgsICptX2lvUXVldWUsIFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigq
dGhpcyksIG9yaWdpbiwgdGFza0hhbmRsZXIgPSBtYWtlUmVmKHRhc2tIYW5kbGVyKSwgZm9sZGVy
UGF0aF0gKHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6Q2xpZW50T3JpZ2luPiYmIGZvbGRlck9yaWdp
bikgbXV0YWJsZSB7CisgICAgICAgIENhY2hlczo6cmV0cmlldmVPcmlnaW5Gcm9tRGlyZWN0b3J5
KGZvbGRlclBhdGgsICptX2lvUXVldWUsIFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigq
dGhpcyksIG9yaWdpbiwgY2FsbGJhY2tBZ2dyZWdhdG9yID0gY2FsbGJhY2tBZ2dyZWdhdG9yLmNv
cHlSZWYoKSwgZm9sZGVyUGF0aF0gKHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6Q2xpZW50T3JpZ2lu
PiYmIGZvbGRlck9yaWdpbikgbXV0YWJsZSB7CiAgICAgICAgICAgICBpZiAoIWZvbGRlck9yaWdp
bikKICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICBpZiAoZm9sZGVyT3JpZ2lu
LT50b3BPcmlnaW4gIT0gb3JpZ2luICYmIGZvbGRlck9yaWdpbi0+Y2xpZW50T3JpZ2luICE9IG9y
aWdpbikKICAgICAgICAgICAgICAgICByZXR1cm47CiAKICAgICAgICAgICAgIEFTU0VSVChmb2xk
ZXJQYXRoID09IGNhY2hlc1Jvb3RQYXRoKCpmb2xkZXJPcmlnaW4pKTsKLSAgICAgICAgICAgIG1f
aW9RdWV1ZS0+ZGlzcGF0Y2goW3BhdGggPSBmb2xkZXJQYXRoLmlzb2xhdGVkQ29weSgpLCB0YXNr
SGFuZGxlciA9IFdURk1vdmUodGFza0hhbmRsZXIpXSB7Ci0gICAgICAgICAgICAgICAgZGVsZXRl
RGlyZWN0b3J5UmVjdXJzaXZlbHkocGF0aCk7Ci0gICAgICAgICAgICB9KTsKKyAgICAgICAgICAg
IGRlbGV0ZURpcmVjdG9yeVJlY3Vyc2l2ZWx5T25CYWNrZ3JvdW5kVGhyZWFkKGZvbGRlclBhdGgs
IFtjYWxsYmFja0FnZ3JlZ2F0b3IgPSBXVEZNb3ZlKGNhbGxiYWNrQWdncmVnYXRvcildIHsgfSk7
CiAgICAgICAgIH0pOwogICAgIH0KIH0KIAordm9pZCBFbmdpbmU6OmRlbGV0ZURpcmVjdG9yeVJl
Y3Vyc2l2ZWx5T25CYWNrZ3JvdW5kVGhyZWFkKGNvbnN0IFN0cmluZyYgcGF0aCwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIEFTU0VSVChSdW5M
b29wOjppc01haW4oKSk7CisKKyAgICBtX2lvUXVldWUtPmRpc3BhdGNoKFtwYXRoID0gcGF0aC5p
c29sYXRlZENvcHkoKSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5k
bGVyKV0oKSBtdXRhYmxlIHsKKyAgICAgICAgZGVsZXRlRGlyZWN0b3J5UmVjdXJzaXZlbHkocGF0
aCk7CisKKyAgICAgICAgUnVuTG9vcDo6bWFpbigpLmRpc3BhdGNoKFtjb21wbGV0aW9uSGFuZGxl
ciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXSB7CisgICAgICAgICAgICBjb21wbGV0aW9u
SGFuZGxlcigpOworICAgICAgICB9KTsKKyAgICB9KTsKK30KKwogdm9pZCBFbmdpbmU6OmNsZWFy
TWVtb3J5UmVwcmVzZW50YXRpb24oY29uc3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiBvcmlnaW4s
IFdlYkNvcmU6OkRPTUNhY2hlRW5naW5lOjpDb21wbGV0aW9uQ2FsbGJhY2smJiBjYWxsYmFjaykK
IHsKICAgICByZWFkQ2FjaGVzRnJvbURpc2sob3JpZ2luLCBbY2FsbGJhY2sgPSBXVEZNb3ZlKGNh
bGxiYWNrKV0oQ2FjaGVzT3JFcnJvciYmIHJlc3VsdCkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9DYWNoZVN0b3JhZ2VFbmdpbmUuaCBiL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvY2FjaGUvQ2FjaGVTdG9yYWdlRW5naW5lLmgKaW5kZXggZDVj
OTQxOWY1NmM1OGU3MDA3MWQyOWQ3ZTVjNDE2YzBkNjhjZGFlNi4uOGMyZThjY2UxNGQ4MTI5MDk3
ZjcxYWMyMWUyNmUzNjFmZDZkNjgzMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9jYWNoZS9DYWNoZVN0b3JhZ2VFbmdpbmUuaAorKysgYi9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL2NhY2hlL0NhY2hlU3RvcmFnZUVuZ2luZS5oCkBAIC03NSw4ICs3NSw4IEBA
IHB1YmxpYzoKICAgICBzdGF0aWMgdm9pZCBjbGVhck1lbW9yeVJlcHJlc2VudGF0aW9uKFBBTDo6
U2Vzc2lvbklELCBXZWJDb3JlOjpDbGllbnRPcmlnaW4mJiwgV2ViQ29yZTo6RE9NQ2FjaGVFbmdp
bmU6OkNvbXBsZXRpb25DYWxsYmFjayYmKTsKICAgICBzdGF0aWMgdm9pZCByZXByZXNlbnRhdGlv
bihQQUw6OlNlc3Npb25JRCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChTdHJpbmcmJik+JiYpOwog
Ci0gICAgc3RhdGljIHZvaWQgY2xlYXJBbGxDYWNoZXMoUEFMOjpTZXNzaW9uSUQsIFJlZjxXVEY6
OkNhbGxiYWNrQWdncmVnYXRvcj4mJik7Ci0gICAgc3RhdGljIHZvaWQgY2xlYXJDYWNoZXNGb3JP
cmlnaW4oUEFMOjpTZXNzaW9uSUQsIFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSYmLCBSZWY8
V1RGOjpDYWxsYmFja0FnZ3JlZ2F0b3I+JiYpOworICAgIHN0YXRpYyB2b2lkIGNsZWFyQWxsQ2Fj
aGVzKFBBTDo6U2Vzc2lvbklELCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYpOworICAgIHN0
YXRpYyB2b2lkIGNsZWFyQ2FjaGVzRm9yT3JpZ2luKFBBTDo6U2Vzc2lvbklELCBXZWJDb3JlOjpT
ZWN1cml0eU9yaWdpbkRhdGEmJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKIAogICAg
IGJvb2wgc2hvdWxkUGVyc2lzdCgpIGNvbnN0IHsgcmV0dXJuICEhbV9pb1F1ZXVlO30KIApAQCAt
OTUsOCArOTUsMTEgQEAgcHJpdmF0ZToKICAgICB2b2lkIHJlbW92ZSh1aW50NjRfdCBjYWNoZUlk
ZW50aWZpZXIsIFdlYkNvcmU6OkRPTUNhY2hlRW5naW5lOjpDYWNoZUlkZW50aWZpZXJDYWxsYmFj
ayYmKTsKICAgICB2b2lkIHJldHJpZXZlQ2FjaGVzKGNvbnN0IFdlYkNvcmU6OkNsaWVudE9yaWdp
biYsIHVpbnQ2NF90IHVwZGF0ZUNvdW50ZXIsIFdlYkNvcmU6OkRPTUNhY2hlRW5naW5lOjpDYWNo
ZUluZm9zQ2FsbGJhY2smJik7CiAKLSAgICB2b2lkIGNsZWFyQWxsQ2FjaGVzKFdURjo6Q2FsbGJh
Y2tBZ2dyZWdhdG9yJik7Ci0gICAgdm9pZCBjbGVhckNhY2hlc0Zvck9yaWdpbihjb25zdCBXZWJD
b3JlOjpTZWN1cml0eU9yaWdpbkRhdGEmLCBXVEY6OkNhbGxiYWNrQWdncmVnYXRvciYpOworICAg
IHZvaWQgY2xlYXJBbGxDYWNoZXMoQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKKyAgICB2
b2lkIGNsZWFyQWxsQ2FjaGVzRnJvbURpc2soQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsK
KyAgICB2b2lkIGNsZWFyQ2FjaGVzRm9yT3JpZ2luKGNvbnN0IFdlYkNvcmU6OlNlY3VyaXR5T3Jp
Z2luRGF0YSYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJik7CisgICAgdm9pZCBjbGVhckNh
Y2hlc0Zvck9yaWdpbkZyb21EaXNrKGNvbnN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSYs
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJik7CisgICAgdm9pZCBkZWxldGVEaXJlY3RvcnlS
ZWN1cnNpdmVseU9uQmFja2dyb3VuZFRocmVhZChjb25zdCBTdHJpbmcmIHBhdGgsIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoKT4mJik7CiAKICAgICB2b2lkIGNsZWFyTWVtb3J5UmVwcmVzZW50YXRp
b24oY29uc3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiwgV2ViQ29yZTo6RE9NQ2FjaGVFbmdpbmU6
OkNvbXBsZXRpb25DYWxsYmFjayYmKTsKICAgICBTdHJpbmcgcmVwcmVzZW50YXRpb24oKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>