<?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>187143</bug_id>
          
          <creation_ts>2018-06-28 09:37:55 -0700</creation_ts>
          <short_desc>Make sure the WebResourceLoadStatisticsStore gets destroyed on the main thread</short_desc>
          <delta_ts>2018-06-28 17:09:12 -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>
          <dependson>187055</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>mkwst</cc>
    
    <cc>ryanhaddad</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wilander</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1437384</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2018-06-28 09:37:55 -0700</bug_when>
    <thetext>Make sure the WebResourceLoadStatisticsStore gets destroyed on the main thread. Currently, we keep capturing a Ref&lt;&gt; to the WebResourceLoadStatisticsStore whenever we dispatch a task to the work queue. This means that the WebResourceLoadStatisticsStore will get destroyed on a background thread if the work queue is the last one to hold a ref to the store, which would not be safe.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1437577</commentid>
    <comment_count>1</comment_count>
      <attachid>343857</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2018-06-28 15:08:39 -0700</bug_when>
    <thetext>Created attachment 343857
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1437603</commentid>
    <comment_count>2</comment_count>
      <attachid>343857</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-06-28 15:50:17 -0700</bug_when>
    <thetext>Comment on attachment 343857
Patch

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

&gt; Source/WebKit/UIProcess/WebResourceLoadStatisticsStore.cpp:188
&gt; +    m_statisticsQueue-&gt;dispatch([this, protectedThis = makeRef(*this), origins = WTFMove(origins)]() mutable {

origins should be isolated except if we are sure they are coming straight from IPC.
We should add a comment saying why this is ok.
And we should probably make WebResourceLoadStatisticsStore::resourceLoadStatisticsUpdated private to ensure it does not get used out of IPC.

&gt; Source/WebKit/UIProcess/WebResourceLoadStatisticsStore.cpp:258
&gt;  void WebResourceLoadStatisticsStore::requestStorageAccessUnderOpener(String&amp;&amp; primaryDomainInNeedOfStorageAccess, uint64_t openerPageID, String&amp;&amp; openerPrimaryDomain, bool isTriggeredByUserGesture)

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1437609</commentid>
    <comment_count>3</comment_count>
      <attachid>343868</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2018-06-28 15:57:46 -0700</bug_when>
    <thetext>Created attachment 343868
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1437635</commentid>
    <comment_count>4</comment_count>
      <attachid>343868</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-06-28 17:06:06 -0700</bug_when>
    <thetext>Comment on attachment 343868
Patch

Clearing flags on attachment: 343868

Committed r233342: &lt;https://trac.webkit.org/changeset/233342&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1437636</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-06-28 17:06:07 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1437637</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-06-28 17:09:12 -0700</bug_when>
    <thetext>&lt;rdar://problem/41609309&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>343857</attachid>
            <date>2018-06-28 15:08:39 -0700</date>
            <delta_ts>2018-06-28 15:57:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-187143-20180628150904.patch</filename>
            <type>text/plain</type>
            <size>8224</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjMzMzIwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGM0ZTAwMzc2YzIwNDRlODIz
OWMzYTM0N2E3ZTYyOTg2YmI2ODJjZWYuLmI4YTBlOGFkMDhiOGU5ZWU2Njk1NjQxMmZjMzA2Mzll
NTYwN2FkZDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMTgtMDYtMjggIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBNYWtlIHN1cmUgdGhlIFdlYlJlc291
cmNlTG9hZFN0YXRpc3RpY3NTdG9yZSBnZXRzIGRlc3Ryb3llZCBvbiB0aGUgbWFpbiB0aHJlYWQK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NzE0Mwor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEhhdmUgV2Vi
UmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlIHN1YmNsYXNzIFRocmVhZFNhZmVSZWZDb3VudGVk
PFdlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZSwgV1RGOjpEZXN0cnVjdGlvblRocmVhZDo6
TWFpbj4KKyAgICAgICAgaW5zdGVhZCBvZiBJUEM6OkNvbm5lY3Rpb246OldvcmtRdWV1ZU1lc3Nh
Z2VSZWNlaXZlci4gVGhpcyBtYWtlcyBzdXJlIHRoYXQgdGhlIFdlYlJlc291cmNlTG9hZFN0YXRp
c3RpY3NTdG9yZQorICAgICAgICBvYmplY3RzIGdldCBkZXN0cm95ZWQgb24gdGhlIG1haW4gdGhy
ZWFkLCBldmVuIGlmIHRoZSBsYXN0IHJlZiB3YXMgaGVsZCBieSBhIGJhY2tncm91bmQgdGhyZWFk
LgorCisgICAgICAgIEFsc28sIG1ldGhvZHMgY2FsbGVkIGJ5IElQQyBhcmUgbm93IGNhbGxlZCBv
biB0aGUgbWFpbiB0aHJlYWQgaW5zdGVhZCBvZiB0aGUgYmFja2dyb3VuZCBxdWV1ZS4gSSB0aGlu
ayBpdCBpcyBjbGVhcmVyIGZvciBhbGwKKyAgICAgICAgb2YgV2ViUmVzb3VyY2VMb2FkU3RhdGlz
dGljc1N0b3JlIHVzYWdlIHRvIGJlIG9uIHRoZSBtYWluIHRocmVhZC4gRXhwZW5zaXZlIHdvcmsg
aXMgc3RpbGwgZG9uZSBvbiB0aGUgYmFja2dyb3VuZCBxdWV1ZSwgaW5zaWRlCisgICAgICAgIHRo
ZSBwZXJzaXN0ZW50IC8gbWVtb3J5IHN0b3JlIGNsYXNzZXMuCisKKyAgICAgICAgKiBVSVByb2Nl
c3MvV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6
V2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlOjp+V2ViUmVzb3VyY2VMb2FkU3RhdGlzdGlj
c1N0b3JlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3Jl
OjpmbHVzaEFuZERlc3Ryb3lQZXJzaXN0ZW50U3RvcmUpOgorICAgICAgICAoV2ViS2l0OjpXZWJS
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmU6OnJlc291cmNlTG9hZFN0YXRpc3RpY3NVcGRhdGVk
KToKKyAgICAgICAgKFdlYktpdDo6V2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlOjpyZXF1
ZXN0U3RvcmFnZUFjY2Vzc1VuZGVyT3BlbmVyKToKKyAgICAgICAgKFdlYktpdDo6V2ViUmVzb3Vy
Y2VMb2FkU3RhdGlzdGljc1N0b3JlOjpwcm9jZXNzV2lsbE9wZW5Db25uZWN0aW9uKToKKyAgICAg
ICAgKFdlYktpdDo6V2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlOjpwcm9jZXNzRGlkQ2xv
c2VDb25uZWN0aW9uKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUmVzb3VyY2VMb2FkU3RhdGlz
dGljc1N0b3JlLmg6CisKIDIwMTgtMDYtMjggIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNv
bT4KIAogICAgICAgICBTcGxpdCBtZW1vcnkgc3RvcmUgbG9naWMgb3V0IG9mIFdlYlJlc291cmNl
TG9hZFN0YXRpc3RpY3NTdG9yZSB0byBjbGFyaWZ5IHRocmVhZGluZyBtb2RlbApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3Jl
LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NT
dG9yZS5jcHAKaW5kZXggZjM2NDUwMTI2YWRhZGY0ZGZmZTg5MmY3NDFhNDZjN2E1MGU4MzQ2ZC4u
MzgyZDE1NDQ1NDA4OGMzMTdlODg4ZjBjYmIyM2FmNWZiODQzNDM4YyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3Rv
cmUuY3BwCkBAIC0xMzgsMTEgKzEzOCwxNSBAQCBXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3Rv
cmU6OldlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZShjb25zdCBTdHJpbmcmIHJlcwogCiBX
ZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmU6On5XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNz
U3RvcmUoKQogeworICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CisKICAgICBmbHVzaEFu
ZERlc3Ryb3lQZXJzaXN0ZW50U3RvcmUoKTsKIH0KIAogdm9pZCBXZWJSZXNvdXJjZUxvYWRTdGF0
aXN0aWNzU3RvcmU6OmZsdXNoQW5kRGVzdHJveVBlcnNpc3RlbnRTdG9yZSgpCiB7CisgICAgQVNT
RVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKwogICAgIGlmICghbV9wZXJzaXN0ZW50U3RvcmFnZSAm
JiAhbV9tZW1vcnlTdG9yZSkKICAgICAgICAgcmV0dXJuOwogCkBAIC0xNzcsMjIgKzE4MSwyMyBA
QCB2b2lkIFdlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZTo6c2NoZWR1bGVTdGF0aXN0aWNz
QW5kRGF0YVJlY29yZHNQcm9jZXNzaW5nKAogICAgIH0pOwogfQogCi0vLyBPbiBiYWNrZ3JvdW5k
IHF1ZXVlIGR1ZSB0byBJUEMuCiB2b2lkIFdlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZTo6
cmVzb3VyY2VMb2FkU3RhdGlzdGljc1VwZGF0ZWQoVmVjdG9yPFdlYkNvcmU6OlJlc291cmNlTG9h
ZFN0YXRpc3RpY3M+JiYgb3JpZ2lucykKIHsKLSAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigp
KTsKKyAgICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOwogCi0gICAgaWYgKCFtX21lbW9yeVN0
b3JlKQotICAgICAgICByZXR1cm47CisgICAgbV9zdGF0aXN0aWNzUXVldWUtPmRpc3BhdGNoKFt0
aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyksIG9yaWdpbnMgPSBXVEZNb3ZlKG9y
aWdpbnMpXSgpIG11dGFibGUgeworICAgICAgICBpZiAoIW1fbWVtb3J5U3RvcmUpCisgICAgICAg
ICAgICByZXR1cm47CiAKLSAgICBtX21lbW9yeVN0b3JlLT5tZXJnZVN0YXRpc3RpY3MoV1RGTW92
ZShvcmlnaW5zKSk7CisgICAgICAgIG1fbWVtb3J5U3RvcmUtPm1lcmdlU3RhdGlzdGljcyhXVEZN
b3ZlKG9yaWdpbnMpKTsKIAotICAgIC8vIFdlIGNhbiBjYW5jZWwgYW55IHBlbmRpbmcgcmVxdWVz
dCB0byBwcm9jZXNzIHN0YXRpc3RpY3Mgc2luY2Ugd2UncmUgZG9pbmcgaXQgc3luY2hyb25vdXNs
eSBiZWxvdy4KLSAgICBtX21lbW9yeVN0b3JlLT5jYW5jZWxQZW5kaW5nU3RhdGlzdGljc1Byb2Nl
c3NpbmdSZXF1ZXN0KCk7CisgICAgICAgIC8vIFdlIGNhbiBjYW5jZWwgYW55IHBlbmRpbmcgcmVx
dWVzdCB0byBwcm9jZXNzIHN0YXRpc3RpY3Mgc2luY2Ugd2UncmUgZG9pbmcgaXQgc3luY2hyb25v
dXNseSBiZWxvdy4KKyAgICAgICAgbV9tZW1vcnlTdG9yZS0+Y2FuY2VsUGVuZGluZ1N0YXRpc3Rp
Y3NQcm9jZXNzaW5nUmVxdWVzdCgpOwogCi0gICAgLy8gRmlyZSBiZWZvcmUgcHJvY2Vzc2luZyBz
dGF0aXN0aWNzIHRvIHByb3BhZ2F0ZSB1c2VyIGludGVyYWN0aW9uIGFzIGZhc3QgYXMgcG9zc2li
bGUgdG8gdGhlIG5ldHdvcmsgcHJvY2Vzcy4KLSAgICBtX21lbW9yeVN0b3JlLT51cGRhdGVDb29r
aWVQYXJ0aXRpb25pbmcoW10oKSB7IH0pOwotICAgIG1fbWVtb3J5U3RvcmUtPnByb2Nlc3NTdGF0
aXN0aWNzQW5kRGF0YVJlY29yZHMoKTsKKyAgICAgICAgLy8gRmlyZSBiZWZvcmUgcHJvY2Vzc2lu
ZyBzdGF0aXN0aWNzIHRvIHByb3BhZ2F0ZSB1c2VyIGludGVyYWN0aW9uIGFzIGZhc3QgYXMgcG9z
c2libGUgdG8gdGhlIG5ldHdvcmsgcHJvY2Vzcy4KKyAgICAgICAgbV9tZW1vcnlTdG9yZS0+dXBk
YXRlQ29va2llUGFydGl0aW9uaW5nKFtdKCkgeyB9KTsKKyAgICAgICAgbV9tZW1vcnlTdG9yZS0+
cHJvY2Vzc1N0YXRpc3RpY3NBbmREYXRhUmVjb3JkcygpOworICAgIH0pOwogfQogCiB2b2lkIFdl
YlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZTo6aGFzU3RvcmFnZUFjY2VzcyhTdHJpbmcmJiBz
dWJGcmFtZUhvc3QsIFN0cmluZyYmIHRvcEZyYW1lSG9zdCwgdWludDY0X3QgZnJhbWVJRCwgdWlu
dDY0X3QgcGFnZUlELCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkIChib29sKT4mJiBjb21wbGV0aW9u
SGFuZGxlcikKQEAgLTI1MCwxMiArMjU1LDE0IEBAIHZvaWQgV2ViUmVzb3VyY2VMb2FkU3RhdGlz
dGljc1N0b3JlOjpyZXF1ZXN0U3RvcmFnZUFjY2VzcyhTdHJpbmcmJiBzdWJGcmFtZUhvc3QsCiAg
ICAgfSk7CiB9CiAKLS8vIE9uIGJhY2tncm91bmQgcXVldWUgZHVlIHRvIElQQy4KIHZvaWQgV2Vi
UmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlOjpyZXF1ZXN0U3RvcmFnZUFjY2Vzc1VuZGVyT3Bl
bmVyKFN0cmluZyYmIHByaW1hcnlEb21haW5Jbk5lZWRPZlN0b3JhZ2VBY2Nlc3MsIHVpbnQ2NF90
IG9wZW5lclBhZ2VJRCwgU3RyaW5nJiYgb3BlbmVyUHJpbWFyeURvbWFpbiwgYm9vbCBpc1RyaWdn
ZXJlZEJ5VXNlckdlc3R1cmUpCiB7Ci0gICAgQVNTRVJUKCFSdW5Mb29wOjppc01haW4oKSk7Ci0g
ICAgaWYgKG1fbWVtb3J5U3RvcmUpCi0gICAgICAgIG1fbWVtb3J5U3RvcmUtPnJlcXVlc3RTdG9y
YWdlQWNjZXNzVW5kZXJPcGVuZXIoV1RGTW92ZShwcmltYXJ5RG9tYWluSW5OZWVkT2ZTdG9yYWdl
QWNjZXNzKSwgb3BlbmVyUGFnZUlELCBXVEZNb3ZlKG9wZW5lclByaW1hcnlEb21haW4pLCBpc1Ry
aWdnZXJlZEJ5VXNlckdlc3R1cmUpOworICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CisK
KyAgICBtX3N0YXRpc3RpY3NRdWV1ZS0+ZGlzcGF0Y2goW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBt
YWtlUmVmKCp0aGlzKSwgcHJpbWFyeURvbWFpbkluTmVlZE9mU3RvcmFnZUFjY2VzcyA9IFdURk1v
dmUocHJpbWFyeURvbWFpbkluTmVlZE9mU3RvcmFnZUFjY2VzcyksIG9wZW5lclBhZ2VJRCwgb3Bl
bmVyUHJpbWFyeURvbWFpbiA9IFdURk1vdmUob3BlbmVyUHJpbWFyeURvbWFpbiksIGlzVHJpZ2dl
cmVkQnlVc2VyR2VzdHVyZV0oKSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKG1fbWVtb3J5U3RvcmUp
CisgICAgICAgICAgICBtX21lbW9yeVN0b3JlLT5yZXF1ZXN0U3RvcmFnZUFjY2Vzc1VuZGVyT3Bl
bmVyKFdURk1vdmUocHJpbWFyeURvbWFpbkluTmVlZE9mU3RvcmFnZUFjY2VzcyksIG9wZW5lclBh
Z2VJRCwgV1RGTW92ZShvcGVuZXJQcmltYXJ5RG9tYWluKSwgaXNUcmlnZ2VyZWRCeVVzZXJHZXN0
dXJlKTsKKyAgICB9KTsKIH0KIAogdm9pZCBXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmU6
OmdyYW50U3RvcmFnZUFjY2VzcyhTdHJpbmcmJiBzdWJGcmFtZUhvc3QsIFN0cmluZyYmIHRvcEZy
YW1lSG9zdCwgdWludDY0X3QgZnJhbWVJRCwgdWludDY0X3QgcGFnZUlELCBib29sIHVzZXJXYXNQ
cm9tcHRlZE5vdywgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFu
ZGxlcikKQEAgLTI5MCwxNSArMjk3LDE2IEBAIHZvaWQgV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGlj
c1N0b3JlOjpyZW1vdmVBbGxTdG9yYWdlQWNjZXNzKCkKIAogICAgIG1fcmVtb3ZlQWxsU3RvcmFn
ZUFjY2Vzc0hhbmRsZXIoKTsKIH0KLSAgICAKLXZvaWQgV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGlj
c1N0b3JlOjpwcm9jZXNzV2lsbE9wZW5Db25uZWN0aW9uKFdlYlByb2Nlc3NQcm94eSYsIElQQzo6
Q29ubmVjdGlvbiYgY29ubmVjdGlvbikKKworCit2b2lkIFdlYlJlc291cmNlTG9hZFN0YXRpc3Rp
Y3NTdG9yZTo6cHJvY2Vzc1dpbGxPcGVuQ29ubmVjdGlvbihXZWJQcm9jZXNzUHJveHkmIHByb2Nl
c3MsIElQQzo6Q29ubmVjdGlvbiYpCiB7Ci0gICAgY29ubmVjdGlvbi5hZGRXb3JrUXVldWVNZXNz
YWdlUmVjZWl2ZXIoTWVzc2FnZXM6OldlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZTo6bWVz
c2FnZVJlY2VpdmVyTmFtZSgpLCBtX3N0YXRpc3RpY3NRdWV1ZS5nZXQoKSwgdGhpcyk7CisgICAg
cHJvY2Vzcy5hZGRNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6OldlYlJlc291cmNlTG9hZFN0YXRp
c3RpY3NTdG9yZTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCAqdGhpcyk7CiB9CiAKLXZvaWQgV2Vi
UmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlOjpwcm9jZXNzRGlkQ2xvc2VDb25uZWN0aW9uKFdl
YlByb2Nlc3NQcm94eSYsIElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbikKK3ZvaWQgV2ViUmVz
b3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlOjpwcm9jZXNzRGlkQ2xvc2VDb25uZWN0aW9uKFdlYlBy
b2Nlc3NQcm94eSYgcHJvY2VzcywgSVBDOjpDb25uZWN0aW9uJikKIHsKLSAgICBjb25uZWN0aW9u
LnJlbW92ZVdvcmtRdWV1ZU1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6V2ViUmVzb3VyY2VMb2Fk
U3RhdGlzdGljc1N0b3JlOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCkpOworICAgIHByb2Nlc3MucmVt
b3ZlTWVzc2FnZVJlY2VpdmVyKE1lc3NhZ2VzOjpXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3Rv
cmU6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSk7CiB9CiAKIHZvaWQgV2ViUmVzb3VyY2VMb2FkU3Rh
dGlzdGljc1N0b3JlOjphcHBsaWNhdGlvbldpbGxUZXJtaW5hdGUoKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLmggYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuaApp
bmRleCA0NTA0ZTg5MDcxNDc4ZDk3ZTIzODg3OGNkODFmMjJlOTAzMGE4YTIxLi5kMjU4ZjA2ZTY1
MDZkNjhjMmUzODIzMjllNjU3YjBkOWVjZjg2MDhkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuaApAQCAtMjks
NiArMjksNyBAQAogI2luY2x1ZGUgIldlYnNpdGVEYXRhVHlwZS5oIgogI2luY2x1ZGUgPHd0Zi9D
b21wbGV0aW9uSGFuZGxlci5oPgogI2luY2x1ZGUgPHd0Zi9SdW5Mb29wLmg+CisjaW5jbHVkZSA8
d3RmL1RocmVhZFNhZmVSZWZDb3VudGVkLmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgogI2lu
Y2x1ZGUgPHd0Zi9XYWxsVGltZS5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgpA
QCAtNTcsNyArNTgsNyBAQCBlbnVtIGNsYXNzIFN0b3JhZ2VBY2Nlc3NTdGF0dXMgewogICAgIEhh
c0FjY2VzcwogfTsKIAotY2xhc3MgV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlIGZpbmFs
IDogcHVibGljIElQQzo6Q29ubmVjdGlvbjo6V29ya1F1ZXVlTWVzc2FnZVJlY2VpdmVyIHsKK2Ns
YXNzIFdlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZSBmaW5hbCA6IHB1YmxpYyBUaHJlYWRT
YWZlUmVmQ291bnRlZDxXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUsIFdURjo6RGVzdHJ1
Y3Rpb25UaHJlYWQ6Ok1haW4+LCBwcml2YXRlIElQQzo6TWVzc2FnZVJlY2VpdmVyIHsKIHB1Ymxp
YzoKICAgICB1c2luZyBVcGRhdGVQcmV2YWxlbnREb21haW5zVG9QYXJ0aXRpb25PckJsb2NrQ29v
a2llc0hhbmRsZXIgPSBGdW5jdGlvbjx2b2lkKGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBkb21haW5z
VG9QYXJ0aXRpb24sIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBkb21haW5zVG9CbG9jaywgY29uc3Qg
VmVjdG9yPFN0cmluZz4mIGRvbWFpbnNUb05laXRoZXJQYXJ0aXRpb25Ob3JCbG9jaywgU2hvdWxk
Q2xlYXJGaXJzdCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKT47CiAgICAgdXNpbmcgSGFz
U3RvcmFnZUFjY2Vzc0ZvckZyYW1lSGFuZGxlciA9IEZ1bmN0aW9uPHZvaWQoY29uc3QgU3RyaW5n
JiByZXNvdXJjZURvbWFpbiwgY29uc3QgU3RyaW5nJiBmaXJzdFBhcnR5RG9tYWluLCB1aW50NjRf
dCBmcmFtZUlELCB1aW50NjRfdCBwYWdlSUQsIEZ1bmN0aW9uPHZvaWQoYm9vbCBoYXNBY2Nlc3Mp
PiYmIGNhbGxiYWNrKT47Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>343868</attachid>
            <date>2018-06-28 15:57:46 -0700</date>
            <delta_ts>2018-06-28 17:06:06 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-187143-20180628155810.patch</filename>
            <type>text/plain</type>
            <size>10717</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjMzMzIwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGM0ZTAwMzc2YzIwNDRlODIz
OWMzYTM0N2E3ZTYyOTg2YmI2ODJjZWYuLmVkZDc1MjZjOWExZDkwOGQ0MzgyNmY2M2MzNDNjYWI1
MWE5Y2U1NDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMTgtMDYtMjggIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBNYWtlIHN1cmUgdGhlIFdlYlJlc291
cmNlTG9hZFN0YXRpc3RpY3NTdG9yZSBnZXRzIGRlc3Ryb3llZCBvbiB0aGUgbWFpbiB0aHJlYWQK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NzE0Mwor
CisgICAgICAgIFJldmlld2VkIGJ5IFlvdWVubiBGYWJsZXQuCisKKyAgICAgICAgSGF2ZSBXZWJS
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUgc3ViY2xhc3MgVGhyZWFkU2FmZVJlZkNvdW50ZWQ8
V2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLCBXVEY6OkRlc3RydWN0aW9uVGhyZWFkOjpN
YWluPgorICAgICAgICBpbnN0ZWFkIG9mIElQQzo6Q29ubmVjdGlvbjo6V29ya1F1ZXVlTWVzc2Fn
ZVJlY2VpdmVyLiBUaGlzIG1ha2VzIHN1cmUgdGhhdCB0aGUgV2ViUmVzb3VyY2VMb2FkU3RhdGlz
dGljc1N0b3JlCisgICAgICAgIG9iamVjdHMgZ2V0IGRlc3Ryb3llZCBvbiB0aGUgbWFpbiB0aHJl
YWQsIGV2ZW4gaWYgdGhlIGxhc3QgcmVmIHdhcyBoZWxkIGJ5IGEgYmFja2dyb3VuZCB0aHJlYWQu
CisKKyAgICAgICAgQWxzbywgbWV0aG9kcyBjYWxsZWQgYnkgSVBDIGFyZSBub3cgY2FsbGVkIG9u
IHRoZSBtYWluIHRocmVhZCBpbnN0ZWFkIG9mIHRoZSBiYWNrZ3JvdW5kIHF1ZXVlLiBJIHRoaW5r
IGl0IGlzIGNsZWFyZXIgZm9yIGFsbAorICAgICAgICBvZiBXZWJSZXNvdXJjZUxvYWRTdGF0aXN0
aWNzU3RvcmUgdXNhZ2UgdG8gYmUgb24gdGhlIG1haW4gdGhyZWFkLiBFeHBlbnNpdmUgd29yayBp
cyBzdGlsbCBkb25lIG9uIHRoZSBiYWNrZ3JvdW5kIHF1ZXVlLCBpbnNpZGUKKyAgICAgICAgdGhl
IHBlcnNpc3RlbnQgLyBtZW1vcnkgc3RvcmUgY2xhc3Nlcy4KKworICAgICAgICAqIFVJUHJvY2Vz
cy9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuY3BwOgorICAgICAgICAoV2ViS2l0OjpX
ZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmU6On5XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNz
U3RvcmUpOgorICAgICAgICAoV2ViS2l0OjpXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmU6
OmZsdXNoQW5kRGVzdHJveVBlcnNpc3RlbnRTdG9yZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlJl
c291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZTo6cmVzb3VyY2VMb2FkU3RhdGlzdGljc1VwZGF0ZWQp
OgorICAgICAgICAoV2ViS2l0OjpXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmU6OnJlcXVl
c3RTdG9yYWdlQWNjZXNzVW5kZXJPcGVuZXIpOgorICAgICAgICAoV2ViS2l0OjpXZWJSZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzU3RvcmU6OnByb2Nlc3NXaWxsT3BlbkNvbm5lY3Rpb24pOgorICAgICAg
ICAoV2ViS2l0OjpXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmU6OnByb2Nlc3NEaWRDbG9z
ZUNvbm5lY3Rpb24pOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0
aWNzU3RvcmUuaDoKKwogMjAxOC0wNi0yOCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29t
PgogCiAgICAgICAgIFNwbGl0IG1lbW9yeSBzdG9yZSBsb2dpYyBvdXQgb2YgV2ViUmVzb3VyY2VM
b2FkU3RhdGlzdGljc1N0b3JlIHRvIGNsYXJpZnkgdGhyZWFkaW5nIG1vZGVsCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUu
Y3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0
b3JlLmNwcAppbmRleCBmMzY0NTAxMjZhZGFkZjRkZmZlODkyZjc0MWE0NmM3YTUwZTgzNDZkLi42
Zjk4ZTc1MWU1OTQzMWMwNGU5OTk4NzExOGIxOWMwMDU2OTZjNzBlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9y
ZS5jcHAKQEAgLTEzOCwxMSArMTM4LDE1IEBAIFdlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9y
ZTo6V2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlKGNvbnN0IFN0cmluZyYgcmVzCiAKIFdl
YlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZTo6fldlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NT
dG9yZSgpCiB7CisgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKwogICAgIGZsdXNoQW5k
RGVzdHJveVBlcnNpc3RlbnRTdG9yZSgpOwogfQogCiB2b2lkIFdlYlJlc291cmNlTG9hZFN0YXRp
c3RpY3NTdG9yZTo6Zmx1c2hBbmREZXN0cm95UGVyc2lzdGVudFN0b3JlKCkKIHsKKyAgICBBU1NF
UlQoUnVuTG9vcDo6aXNNYWluKCkpOworCiAgICAgaWYgKCFtX3BlcnNpc3RlbnRTdG9yYWdlICYm
ICFtX21lbW9yeVN0b3JlKQogICAgICAgICByZXR1cm47CiAKQEAgLTE3NywyMiArMTgxLDI2IEBA
IHZvaWQgV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlOjpzY2hlZHVsZVN0YXRpc3RpY3NB
bmREYXRhUmVjb3Jkc1Byb2Nlc3NpbmcoCiAgICAgfSk7CiB9CiAKLS8vIE9uIGJhY2tncm91bmQg
cXVldWUgZHVlIHRvIElQQy4KIHZvaWQgV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlOjpy
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzVXBkYXRlZChWZWN0b3I8V2ViQ29yZTo6UmVzb3VyY2VMb2Fk
U3RhdGlzdGljcz4mJiBvcmlnaW5zKQogewotICAgIEFTU0VSVCghUnVuTG9vcDo6aXNNYWluKCkp
OworICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CiAKLSAgICBpZiAoIW1fbWVtb3J5U3Rv
cmUpCi0gICAgICAgIHJldHVybjsKKyAgICAvLyBJdCBpcyBzYWZlIHRvIG1vdmUgdGhlIG9yaWdp
bnMgdG8gdGhlIGJhY2tncm91bmQgcXVldWUgd2l0aG91dCBpc29sYXRlZCBjb3B5IGhlcmUgYmVj
YXVzZSB0aGlzIGlzIGFuIHItdmFsdWUKKyAgICAvLyBjb21pbmcgZnJvbSBJUEMuIFJlc291cmNl
TG9hZFN0YXRpc3RpY3Mgb25seSBjb250YWlucyBzdHJpbmdzIHdoaWNoIGFyZSBzYWZlIHRvIG1v
dmUgdG8gb3RoZXIgdGhyZWFkcyBhcyBsb25nCisgICAgLy8gYXMgbm9ib2R5IG9uIHRoaXMgdGhy
ZWFkIGhvbGRzIGEgcmVmZXJlbmNlIHRvIHRob3NlIHN0cmluZ3MuCisgICAgbV9zdGF0aXN0aWNz
UXVldWUtPmRpc3BhdGNoKFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyksIG9y
aWdpbnMgPSBXVEZNb3ZlKG9yaWdpbnMpXSgpIG11dGFibGUgeworICAgICAgICBpZiAoIW1fbWVt
b3J5U3RvcmUpCisgICAgICAgICAgICByZXR1cm47CiAKLSAgICBtX21lbW9yeVN0b3JlLT5tZXJn
ZVN0YXRpc3RpY3MoV1RGTW92ZShvcmlnaW5zKSk7CisgICAgICAgIG1fbWVtb3J5U3RvcmUtPm1l
cmdlU3RhdGlzdGljcyhXVEZNb3ZlKG9yaWdpbnMpKTsKIAotICAgIC8vIFdlIGNhbiBjYW5jZWwg
YW55IHBlbmRpbmcgcmVxdWVzdCB0byBwcm9jZXNzIHN0YXRpc3RpY3Mgc2luY2Ugd2UncmUgZG9p
bmcgaXQgc3luY2hyb25vdXNseSBiZWxvdy4KLSAgICBtX21lbW9yeVN0b3JlLT5jYW5jZWxQZW5k
aW5nU3RhdGlzdGljc1Byb2Nlc3NpbmdSZXF1ZXN0KCk7CisgICAgICAgIC8vIFdlIGNhbiBjYW5j
ZWwgYW55IHBlbmRpbmcgcmVxdWVzdCB0byBwcm9jZXNzIHN0YXRpc3RpY3Mgc2luY2Ugd2UncmUg
ZG9pbmcgaXQgc3luY2hyb25vdXNseSBiZWxvdy4KKyAgICAgICAgbV9tZW1vcnlTdG9yZS0+Y2Fu
Y2VsUGVuZGluZ1N0YXRpc3RpY3NQcm9jZXNzaW5nUmVxdWVzdCgpOwogCi0gICAgLy8gRmlyZSBi
ZWZvcmUgcHJvY2Vzc2luZyBzdGF0aXN0aWNzIHRvIHByb3BhZ2F0ZSB1c2VyIGludGVyYWN0aW9u
IGFzIGZhc3QgYXMgcG9zc2libGUgdG8gdGhlIG5ldHdvcmsgcHJvY2Vzcy4KLSAgICBtX21lbW9y
eVN0b3JlLT51cGRhdGVDb29raWVQYXJ0aXRpb25pbmcoW10oKSB7IH0pOwotICAgIG1fbWVtb3J5
U3RvcmUtPnByb2Nlc3NTdGF0aXN0aWNzQW5kRGF0YVJlY29yZHMoKTsKKyAgICAgICAgLy8gRmly
ZSBiZWZvcmUgcHJvY2Vzc2luZyBzdGF0aXN0aWNzIHRvIHByb3BhZ2F0ZSB1c2VyIGludGVyYWN0
aW9uIGFzIGZhc3QgYXMgcG9zc2libGUgdG8gdGhlIG5ldHdvcmsgcHJvY2Vzcy4KKyAgICAgICAg
bV9tZW1vcnlTdG9yZS0+dXBkYXRlQ29va2llUGFydGl0aW9uaW5nKFtdKCkgeyB9KTsKKyAgICAg
ICAgbV9tZW1vcnlTdG9yZS0+cHJvY2Vzc1N0YXRpc3RpY3NBbmREYXRhUmVjb3JkcygpOworICAg
IH0pOwogfQogCiB2b2lkIFdlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZTo6aGFzU3RvcmFn
ZUFjY2VzcyhTdHJpbmcmJiBzdWJGcmFtZUhvc3QsIFN0cmluZyYmIHRvcEZyYW1lSG9zdCwgdWlu
dDY0X3QgZnJhbWVJRCwgdWludDY0X3QgcGFnZUlELCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkIChi
b29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKQEAgLTI1MCwxMiArMjU4LDE3IEBAIHZvaWQgV2Vi
UmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlOjpyZXF1ZXN0U3RvcmFnZUFjY2VzcyhTdHJpbmcm
JiBzdWJGcmFtZUhvc3QsCiAgICAgfSk7CiB9CiAKLS8vIE9uIGJhY2tncm91bmQgcXVldWUgZHVl
IHRvIElQQy4KIHZvaWQgV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlOjpyZXF1ZXN0U3Rv
cmFnZUFjY2Vzc1VuZGVyT3BlbmVyKFN0cmluZyYmIHByaW1hcnlEb21haW5Jbk5lZWRPZlN0b3Jh
Z2VBY2Nlc3MsIHVpbnQ2NF90IG9wZW5lclBhZ2VJRCwgU3RyaW5nJiYgb3BlbmVyUHJpbWFyeURv
bWFpbiwgYm9vbCBpc1RyaWdnZXJlZEJ5VXNlckdlc3R1cmUpCiB7Ci0gICAgQVNTRVJUKCFSdW5M
b29wOjppc01haW4oKSk7Ci0gICAgaWYgKG1fbWVtb3J5U3RvcmUpCi0gICAgICAgIG1fbWVtb3J5
U3RvcmUtPnJlcXVlc3RTdG9yYWdlQWNjZXNzVW5kZXJPcGVuZXIoV1RGTW92ZShwcmltYXJ5RG9t
YWluSW5OZWVkT2ZTdG9yYWdlQWNjZXNzKSwgb3BlbmVyUGFnZUlELCBXVEZNb3ZlKG9wZW5lclBy
aW1hcnlEb21haW4pLCBpc1RyaWdnZXJlZEJ5VXNlckdlc3R1cmUpOworICAgIEFTU0VSVChSdW5M
b29wOjppc01haW4oKSk7CisKKyAgICAvLyBJdCBpcyBzYWZlIHRvIG1vdmUgdGhlIHN0cmluZ3Mg
dG8gdGhlIGJhY2tncm91bmQgcXVldWUgd2l0aG91dCBpc29sYXRlZCBjb3B5IGhlcmUgYmVjYXVz
ZSB0aGV5IGFyZSByLXZhbHVlIHJlZmVyZW5jZXMKKyAgICAvLyBjb21pbmcgZnJvbSBJUEMuIFN0
cmluZ3Mgd2hpY2ggYXJlIHNhZmUgdG8gbW92ZSB0byBvdGhlciB0aHJlYWRzIGFzIGxvbmcgYXMg
bm9ib2R5IG9uIHRoaXMgdGhyZWFkIGhvbGRzIGEgcmVmZXJlbmNlCisgICAgLy8gdG8gdGhvc2Ug
c3RyaW5ncy4KKyAgICBtX3N0YXRpc3RpY3NRdWV1ZS0+ZGlzcGF0Y2goW3RoaXMsIHByb3RlY3Rl
ZFRoaXMgPSBtYWtlUmVmKCp0aGlzKSwgcHJpbWFyeURvbWFpbkluTmVlZE9mU3RvcmFnZUFjY2Vz
cyA9IFdURk1vdmUocHJpbWFyeURvbWFpbkluTmVlZE9mU3RvcmFnZUFjY2VzcyksIG9wZW5lclBh
Z2VJRCwgb3BlbmVyUHJpbWFyeURvbWFpbiA9IFdURk1vdmUob3BlbmVyUHJpbWFyeURvbWFpbiks
IGlzVHJpZ2dlcmVkQnlVc2VyR2VzdHVyZV0oKSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKG1fbWVt
b3J5U3RvcmUpCisgICAgICAgICAgICBtX21lbW9yeVN0b3JlLT5yZXF1ZXN0U3RvcmFnZUFjY2Vz
c1VuZGVyT3BlbmVyKFdURk1vdmUocHJpbWFyeURvbWFpbkluTmVlZE9mU3RvcmFnZUFjY2Vzcyks
IG9wZW5lclBhZ2VJRCwgV1RGTW92ZShvcGVuZXJQcmltYXJ5RG9tYWluKSwgaXNUcmlnZ2VyZWRC
eVVzZXJHZXN0dXJlKTsKKyAgICB9KTsKIH0KIAogdm9pZCBXZWJSZXNvdXJjZUxvYWRTdGF0aXN0
aWNzU3RvcmU6OmdyYW50U3RvcmFnZUFjY2VzcyhTdHJpbmcmJiBzdWJGcmFtZUhvc3QsIFN0cmlu
ZyYmIHRvcEZyYW1lSG9zdCwgdWludDY0X3QgZnJhbWVJRCwgdWludDY0X3QgcGFnZUlELCBib29s
IHVzZXJXYXNQcm9tcHRlZE5vdywgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21w
bGV0aW9uSGFuZGxlcikKQEAgLTI5MCwxNSArMzAzLDE2IEBAIHZvaWQgV2ViUmVzb3VyY2VMb2Fk
U3RhdGlzdGljc1N0b3JlOjpyZW1vdmVBbGxTdG9yYWdlQWNjZXNzKCkKIAogICAgIG1fcmVtb3Zl
QWxsU3RvcmFnZUFjY2Vzc0hhbmRsZXIoKTsKIH0KLSAgICAKLXZvaWQgV2ViUmVzb3VyY2VMb2Fk
U3RhdGlzdGljc1N0b3JlOjpwcm9jZXNzV2lsbE9wZW5Db25uZWN0aW9uKFdlYlByb2Nlc3NQcm94
eSYsIElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbikKKworCit2b2lkIFdlYlJlc291cmNlTG9h
ZFN0YXRpc3RpY3NTdG9yZTo6cHJvY2Vzc1dpbGxPcGVuQ29ubmVjdGlvbihXZWJQcm9jZXNzUHJv
eHkmIHByb2Nlc3MsIElQQzo6Q29ubmVjdGlvbiYpCiB7Ci0gICAgY29ubmVjdGlvbi5hZGRXb3Jr
UXVldWVNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6OldlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NT
dG9yZTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCBtX3N0YXRpc3RpY3NRdWV1ZS5nZXQoKSwgdGhp
cyk7CisgICAgcHJvY2Vzcy5hZGRNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6OldlYlJlc291cmNl
TG9hZFN0YXRpc3RpY3NTdG9yZTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCAqdGhpcyk7CiB9CiAK
LXZvaWQgV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlOjpwcm9jZXNzRGlkQ2xvc2VDb25u
ZWN0aW9uKFdlYlByb2Nlc3NQcm94eSYsIElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbikKK3Zv
aWQgV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlOjpwcm9jZXNzRGlkQ2xvc2VDb25uZWN0
aW9uKFdlYlByb2Nlc3NQcm94eSYgcHJvY2VzcywgSVBDOjpDb25uZWN0aW9uJikKIHsKLSAgICBj
b25uZWN0aW9uLnJlbW92ZVdvcmtRdWV1ZU1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6V2ViUmVz
b3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCkpOworICAgIHBy
b2Nlc3MucmVtb3ZlTWVzc2FnZVJlY2VpdmVyKE1lc3NhZ2VzOjpXZWJSZXNvdXJjZUxvYWRTdGF0
aXN0aWNzU3RvcmU6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSk7CiB9CiAKIHZvaWQgV2ViUmVzb3Vy
Y2VMb2FkU3RhdGlzdGljc1N0b3JlOjphcHBsaWNhdGlvbldpbGxUZXJtaW5hdGUoKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0
b3JlLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNz
U3RvcmUuaAppbmRleCA0NTA0ZTg5MDcxNDc4ZDk3ZTIzODg3OGNkODFmMjJlOTAzMGE4YTIxLi44
YTAxOWE0YWM2MDcxZDRlYmRlMjhiOGNhNGU0OTQ5MDhiZTZkMDc4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUu
aApAQCAtMjksNiArMjksNyBAQAogI2luY2x1ZGUgIldlYnNpdGVEYXRhVHlwZS5oIgogI2luY2x1
ZGUgPHd0Zi9Db21wbGV0aW9uSGFuZGxlci5oPgogI2luY2x1ZGUgPHd0Zi9SdW5Mb29wLmg+Cisj
aW5jbHVkZSA8d3RmL1RocmVhZFNhZmVSZWZDb3VudGVkLmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rv
ci5oPgogI2luY2x1ZGUgPHd0Zi9XYWxsVGltZS5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0
cmluZy5oPgpAQCAtNTcsNyArNTgsNyBAQCBlbnVtIGNsYXNzIFN0b3JhZ2VBY2Nlc3NTdGF0dXMg
ewogICAgIEhhc0FjY2VzcwogfTsKIAotY2xhc3MgV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0
b3JlIGZpbmFsIDogcHVibGljIElQQzo6Q29ubmVjdGlvbjo6V29ya1F1ZXVlTWVzc2FnZVJlY2Vp
dmVyIHsKK2NsYXNzIFdlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZSBmaW5hbCA6IHB1Ymxp
YyBUaHJlYWRTYWZlUmVmQ291bnRlZDxXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUsIFdU
Rjo6RGVzdHJ1Y3Rpb25UaHJlYWQ6Ok1haW4+LCBwcml2YXRlIElQQzo6TWVzc2FnZVJlY2VpdmVy
IHsKIHB1YmxpYzoKICAgICB1c2luZyBVcGRhdGVQcmV2YWxlbnREb21haW5zVG9QYXJ0aXRpb25P
ckJsb2NrQ29va2llc0hhbmRsZXIgPSBGdW5jdGlvbjx2b2lkKGNvbnN0IFZlY3RvcjxTdHJpbmc+
JiBkb21haW5zVG9QYXJ0aXRpb24sIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBkb21haW5zVG9CbG9j
aywgY29uc3QgVmVjdG9yPFN0cmluZz4mIGRvbWFpbnNUb05laXRoZXJQYXJ0aXRpb25Ob3JCbG9j
aywgU2hvdWxkQ2xlYXJGaXJzdCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKT47CiAgICAg
dXNpbmcgSGFzU3RvcmFnZUFjY2Vzc0ZvckZyYW1lSGFuZGxlciA9IEZ1bmN0aW9uPHZvaWQoY29u
c3QgU3RyaW5nJiByZXNvdXJjZURvbWFpbiwgY29uc3QgU3RyaW5nJiBmaXJzdFBhcnR5RG9tYWlu
LCB1aW50NjRfdCBmcmFtZUlELCB1aW50NjRfdCBwYWdlSUQsIEZ1bmN0aW9uPHZvaWQoYm9vbCBo
YXNBY2Nlc3MpPiYmIGNhbGxiYWNrKT47CkBAIC03OSwxMSArODAsOCBAQCBwdWJsaWM6CiAgICAg
dm9pZCBzZXRTaG91bGRDbGFzc2lmeVJlc291cmNlc0JlZm9yZURhdGFSZWNvcmRzUmVtb3ZhbChi
b29sKTsKICAgICB2b2lkIHNldFNob3VsZFN1Ym1pdFRlbGVtZXRyeShib29sKTsKIAotICAgIHZv
aWQgcmVzb3VyY2VMb2FkU3RhdGlzdGljc1VwZGF0ZWQoVmVjdG9yPFdlYkNvcmU6OlJlc291cmNl
TG9hZFN0YXRpc3RpY3M+JiYgb3JpZ2lucyk7Ci0KICAgICB2b2lkIGhhc1N0b3JhZ2VBY2Nlc3Mo
U3RyaW5nJiYgc3ViRnJhbWVIb3N0LCBTdHJpbmcmJiB0b3BGcmFtZUhvc3QsIHVpbnQ2NF90IGZy
YW1lSUQsIHVpbnQ2NF90IHBhZ2VJRCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBj
YWxsYmFjayk7CiAgICAgdm9pZCByZXF1ZXN0U3RvcmFnZUFjY2VzcyhTdHJpbmcmJiBzdWJGcmFt
ZUhvc3QsIFN0cmluZyYmIHRvcEZyYW1lSG9zdCwgdWludDY0X3QgZnJhbWVJRCwgdWludDY0X3Qg
cGFnZUlELCBib29sIHByb21wdEVuYWJsZWQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoU3RvcmFn
ZUFjY2Vzc1N0YXR1cyk+JiYpOwotICAgIHZvaWQgcmVxdWVzdFN0b3JhZ2VBY2Nlc3NVbmRlck9w
ZW5lcihTdHJpbmcmJiBwcmltYXJ5RG9tYWluSW5OZWVkT2ZTdG9yYWdlQWNjZXNzLCB1aW50NjRf
dCBvcGVuZXJQYWdlSUQsIFN0cmluZyYmIG9wZW5lclByaW1hcnlEb21haW4sIGJvb2wgaXNUcmln
Z2VyZWRCeVVzZXJHZXN0dXJlKTsKICAgICB2b2lkIGdyYW50U3RvcmFnZUFjY2VzcyhTdHJpbmcm
JiBzdWJGcmFtZUhvc3QsIFN0cmluZyYmIHRvcEZyYW1lSG9zdCwgdWludDY0X3QgZnJhbWVJRCwg
dWludDY0X3QgcGFnZUlELCBib29sIHVzZXJXYXNQcm9tcHRlZE5vdywgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChib29sKT4mJik7CiAgICAgdm9pZCByZXF1ZXN0U3RvcmFnZUFjY2Vzc0NhbGxiYWNr
KGJvb2wgd2FzR3JhbnRlZCwgdWludDY0X3QgY29udGV4dElkKTsKIApAQCAtMTUwLDkgKzE0OCwx
MyBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAgIFdlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9y
ZShjb25zdCBTdHJpbmcmLCBGdW5jdGlvbjx2b2lkKGNvbnN0IFN0cmluZyYpPiYmIHRlc3RpbmdD
YWxsYmFjaywgYm9vbCBpc0VwaGVtZXJhbCwgVXBkYXRlUHJldmFsZW50RG9tYWluc1RvUGFydGl0
aW9uT3JCbG9ja0Nvb2tpZXNIYW5kbGVyJiYsIEhhc1N0b3JhZ2VBY2Nlc3NGb3JGcmFtZUhhbmRs
ZXImJiwgR3JhbnRTdG9yYWdlQWNjZXNzSGFuZGxlciYmLCBSZW1vdmVBbGxTdG9yYWdlQWNjZXNz
SGFuZGxlciYmLCBSZW1vdmVQcmV2YWxlbnREb21haW5zSGFuZGxlciYmKTsKIAotICAgIC8vIElQ
Qzo6TWVzc2FnZVJlY2VpdmVyCisgICAgLy8gSVBDOjpNZXNzYWdlUmVjZWl2ZXIuCiAgICAgdm9p
ZCBkaWRSZWNlaXZlTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXImKSBvdmVy
cmlkZTsKIAorICAgIC8vIElQQyBtZXNzYWdlIGhhbmRsZXJzLgorICAgIHZvaWQgcmVzb3VyY2VM
b2FkU3RhdGlzdGljc1VwZGF0ZWQoVmVjdG9yPFdlYkNvcmU6OlJlc291cmNlTG9hZFN0YXRpc3Rp
Y3M+JiYgb3JpZ2lucyk7CisgICAgdm9pZCByZXF1ZXN0U3RvcmFnZUFjY2Vzc1VuZGVyT3BlbmVy
KFN0cmluZyYmIHByaW1hcnlEb21haW5Jbk5lZWRPZlN0b3JhZ2VBY2Nlc3MsIHVpbnQ2NF90IG9w
ZW5lclBhZ2VJRCwgU3RyaW5nJiYgb3BlbmVyUHJpbWFyeURvbWFpbiwgYm9vbCBpc1RyaWdnZXJl
ZEJ5VXNlckdlc3R1cmUpOworCiAgICAgdm9pZCBwZXJmb3JtRGFpbHlUYXNrcygpOwogCiAgICAg
U3RvcmFnZUFjY2Vzc1N0YXR1cyBzdG9yYWdlQWNjZXNzU3RhdHVzKGNvbnN0IFN0cmluZyYgc3Vi
RnJhbWVQcmltYXJ5RG9tYWluLCBjb25zdCBTdHJpbmcmIHRvcEZyYW1lUHJpbWFyeURvbWFpbik7
Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>