<?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>185542</bug_id>
          
          <creation_ts>2018-05-11 00:38:45 -0700</creation_ts>
          <short_desc>Network process should not stat() all cache files on startup to find their sizes</short_desc>
          <delta_ts>2018-05-11 11:11:29 -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>Page Loading</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="Antti Koivisto">koivisto</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>beidson</cc>
    
    <cc>cdumez</cc>
    
    <cc>cgarcia</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ews-watchlist</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1423074</commentid>
    <comment_count>0</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2018-05-11 00:38:45 -0700</bug_when>
    <thetext>We can estimate the records sizes to avoid lots of CPU use and I/O under stat().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1423075</commentid>
    <comment_count>1</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2018-05-11 00:39:50 -0700</bug_when>
    <thetext>&lt;rdar://problem/40092953&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1423083</commentid>
    <comment_count>2</comment_count>
      <attachid>340178</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2018-05-11 01:14:07 -0700</bug_when>
    <thetext>Created attachment 340178
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1423165</commentid>
    <comment_count>3</comment_count>
      <attachid>340178</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2018-05-11 10:27:32 -0700</bug_when>
    <thetext>Comment on attachment 340178
patch

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

&gt; Source/WebKit/ChangeLog:12
&gt; +        Large bodies are saved in seprate blob files so record file sizes are capped. We can avoid work by

typo: seprate</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1423170</commentid>
    <comment_count>4</comment_count>
      <attachid>340197</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2018-05-11 10:32:54 -0700</bug_when>
    <thetext>Created attachment 340197
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1423189</commentid>
    <comment_count>5</comment_count>
      <attachid>340197</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-05-11 11:11:27 -0700</bug_when>
    <thetext>Comment on attachment 340197
patch

Clearing flags on attachment: 340197

Committed r231708: &lt;https://trac.webkit.org/changeset/231708&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1423190</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-05-11 11:11:29 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>340178</attachid>
            <date>2018-05-11 01:14:07 -0700</date>
            <delta_ts>2018-05-11 10:32:54 -0700</delta_ts>
            <desc>patch</desc>
            <filename>cache-less-stat.patch</filename>
            <type>text/plain</type>
            <size>5712</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMzE2OTQpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI2IEBACisyMDE4LTA1LTExICBBbnR0aSBLb2l2
aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBOZXR3b3JrIHByb2Nlc3Mgc2hvdWxk
IG5vdCBzdGF0KCkgYWxsIGNhY2hlIGZpbGVzIG9uIHN0YXJ0dXAgdG8gZmluZCB0aGVpciBzaXpl
cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg1NTQy
CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS80MDA5Mjk1Mz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGlzIGRvbmUgdG8gY29tcHV0ZSBob3cg
bXVjaCBkaXNrIHNwYWNlIGEgY2FjaGUgaXMgdXNpbmcuIFdoaWxlIHRoZSBvcGVyYXRpb24gaGFw
cGVucworICAgICAgICBpbiBhIGJhY2tncm91bmQgcHJpb3JpdHkgdGhyZWFkIGl0IGlzIHN0aWxs
IHF1aXRlIGEgYml0IG9mIHdvcmsuCisKKyAgICAgICAgTGFyZ2UgYm9kaWVzIGFyZSBzYXZlZCBp
biBzZXByYXRlIGJsb2IgZmlsZXMgc28gcmVjb3JkIGZpbGUgc2l6ZXMgYXJlIGNhcHBlZC4gV2Ug
Y2FuIGF2b2lkIHdvcmsgYnkKKyAgICAgICAgZXN0aW1hdGluZyB0aGVpciBzaXplIGluc3RlYWQg
b2YgY291bnRpbmcgaXQgZXhhY3RseS4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL2NhY2hl
L05ldHdvcmtDYWNoZVN0b3JhZ2UuY3BwOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ2FjaGU6
OmVzdGltYXRlUmVjb3Jkc1NpemUpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ2FjaGU6OlN0
b3JhZ2U6OnN5bmNocm9uaXplKToKKworICAgICAgICAgICAgVXNlIHNpemUgZXN0aW1hdGlvbiBp
ZiBibG9iIHN0b3JhZ2UgaXMgaW4gdXNlLgorICAgICAgICAgICAgUmVtb3ZlIHRoZSBjb2RlIHRo
YXQgd291bGQgZGVsZXRlIGVtcHR5IGZpbGVzLiBOb3JtYWwgY2FjaGUgc2hyaW5raW5nIGhhbmRs
ZXMgdGhpcy4KKworICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ2FjaGU6OlN0b3JhZ2U6OnNob3Vs
ZFN0b3JlQm9keUFzQmxvYik6CisKIDIwMTgtMDUtMTEgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5A
YXBwbGUuY29tPgogCiAgICAgICAgIE5ldHdvcmtDT1JTUHJlZmxpZ2h0Q2hlY2tlciBzaG91bGQg
cHJvY2VlZCB3aGVuIGhhdmluZyBhIFByb3RlY3Rpb25TcGFjZUF1dGhlbnRpY2F0aW9uU2NoZW1l
U2VydmVyVHJ1c3RFdmFsdWF0aW9uUmVxdWVzdGVkIGNoYWxsZW5nZQpJbmRleDogU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdG9yYWdlLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0
b3JhZ2UuY3BwCShyZXZpc2lvbiAyMzE1NTMpCisrKyBTb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0b3JhZ2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00NSw2
ICs0NSw3IEBAIHN0YXRpYyBjb25zdCBjaGFyIHZlcnNpb25EaXJlY3RvcnlQcmVmaXgKIHN0YXRp
YyBjb25zdCBjaGFyIHJlY29yZHNEaXJlY3RvcnlOYW1lW10gPSAiUmVjb3JkcyI7CiBzdGF0aWMg
Y29uc3QgY2hhciBibG9ic0RpcmVjdG9yeU5hbWVbXSA9ICJCbG9icyI7CiBzdGF0aWMgY29uc3Qg
Y2hhciBibG9iU3VmZml4W10gPSAiLWJsb2IiOworY29uc3RleHByIHNpemVfdCBtYXhpbXVtSW5s
aW5lQm9keVNpemUgeyAxNiAqIDEwMjQgfTsKIAogc3RhdGljIGRvdWJsZSBjb21wdXRlUmVjb3Jk
V29ydGgoRmlsZVRpbWVzKTsKIApAQCAtMjYxLDYgKzI2MiwxNCBAQCBzaXplX3QgU3RvcmFnZTo6
YXBwcm94aW1hdGVTaXplKCkgY29uc3QKICAgICByZXR1cm4gbV9hcHByb3hpbWF0ZVJlY29yZHNT
aXplICsgbV9ibG9iU3RvcmFnZS5hcHByb3hpbWF0ZVNpemUoKTsKIH0KIAorc3RhdGljIHNpemVf
dCBlc3RpbWF0ZVJlY29yZHNTaXplKHVuc2lnbmVkIHJlY29yZENvdW50LCB1bnNpZ25lZCBibG9i
Q291bnQpCit7CisgICAgYXV0byBpbmxpbmVCb2R5Q291bnQgPSByZWNvcmRDb3VudCAtIHN0ZDo6
bWluKGJsb2JDb3VudCwgcmVjb3JkQ291bnQpOworICAgIGF1dG8gaGVhZGVyU2l6ZXMgPSByZWNv
cmRDb3VudCAqIDQwOTY7CisgICAgYXV0byBpbmxpbmVCb2R5U2l6ZXMgPSAobWF4aW11bUlubGlu
ZUJvZHlTaXplIC8gMikgKiBpbmxpbmVCb2R5Q291bnQ7CisgICAgcmV0dXJuIGhlYWRlclNpemVz
ICsgaW5saW5lQm9keVNpemVzOworfQorCiB2b2lkIFN0b3JhZ2U6OnN5bmNocm9uaXplKCkKIHsK
ICAgICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOwpAQCAtMjc0LDEwICsyODMsMTUgQEAgdm9p
ZCBTdG9yYWdlOjpzeW5jaHJvbml6ZSgpCiAgICAgYmFja2dyb3VuZElPUXVldWUoKS5kaXNwYXRj
aChbdGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpXSAoKSBtdXRhYmxlIHsKICAg
ICAgICAgYXV0byByZWNvcmRGaWx0ZXIgPSBzdGQ6Om1ha2VfdW5pcXVlPENvbnRlbnRzRmlsdGVy
PigpOwogICAgICAgICBhdXRvIGJsb2JGaWx0ZXIgPSBzdGQ6Om1ha2VfdW5pcXVlPENvbnRlbnRz
RmlsdGVyPigpOworCisgICAgICAgIC8vIE1vc3Qgb2YgdGhlIGRpc2sgc3BhY2UgdXNhZ2UgaXMg
aW4gYmxvYnMgaWYgd2UgYXJlIHVzaW5nIHRoZW0uIEFwcHJveGltYXRlIHJlY29yZHMgZmlsZSBz
aXplcyB0byBhdm9pZCBleHBlbnNpdmUgc3RhdCgpIGNhbGxzLgorICAgICAgICBib29sIHNob3Vs
ZENvbXB1dGVFeGFjdFJlY29yZHNTaXplID0gIW1fY2FuVXNlQmxvYnNGb3JGb3JCb2R5RGF0YTsK
ICAgICAgICAgc2l6ZV90IHJlY29yZHNTaXplID0gMDsKLSAgICAgICAgdW5zaWduZWQgY291bnQg
PSAwOworICAgICAgICB1bnNpZ25lZCByZWNvcmRDb3VudCA9IDA7CisgICAgICAgIHVuc2lnbmVk
IGJsb2JDb3VudCA9IDA7CisKICAgICAgICAgU3RyaW5nIGFueVR5cGU7Ci0gICAgICAgIHRyYXZl
cnNlUmVjb3Jkc0ZpbGVzKHJlY29yZHNQYXRoKCksIGFueVR5cGUsIFsmcmVjb3JkRmlsdGVyLCAm
YmxvYkZpbHRlciwgJnJlY29yZHNTaXplLCAmY291bnRdKGNvbnN0IFN0cmluZyYgZmlsZU5hbWUs
IGNvbnN0IFN0cmluZyYgaGFzaFN0cmluZywgY29uc3QgU3RyaW5nJiB0eXBlLCBib29sIGlzQmxv
YiwgY29uc3QgU3RyaW5nJiByZWNvcmREaXJlY3RvcnlQYXRoKSB7CisgICAgICAgIHRyYXZlcnNl
UmVjb3Jkc0ZpbGVzKHJlY29yZHNQYXRoKCksIGFueVR5cGUsIFsmXShjb25zdCBTdHJpbmcmIGZp
bGVOYW1lLCBjb25zdCBTdHJpbmcmIGhhc2hTdHJpbmcsIGNvbnN0IFN0cmluZyYgdHlwZSwgYm9v
bCBpc0Jsb2IsIGNvbnN0IFN0cmluZyYgcmVjb3JkRGlyZWN0b3J5UGF0aCkgewogICAgICAgICAg
ICAgYXV0byBmaWxlUGF0aCA9IFdlYkNvcmU6OkZpbGVTeXN0ZW06OnBhdGhCeUFwcGVuZGluZ0Nv
bXBvbmVudChyZWNvcmREaXJlY3RvcnlQYXRoLCBmaWxlTmFtZSk7CiAKICAgICAgICAgICAgIEtl
eTo6SGFzaFR5cGUgaGFzaDsKQEAgLTI4NSwyMyArMjk5LDI3IEBAIHZvaWQgU3RvcmFnZTo6c3lu
Y2hyb25pemUoKQogICAgICAgICAgICAgICAgIFdlYkNvcmU6OkZpbGVTeXN0ZW06OmRlbGV0ZUZp
bGUoZmlsZVBhdGgpOwogICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgIH0KLSAg
ICAgICAgICAgIGxvbmcgbG9uZyBmaWxlU2l6ZSA9IDA7Ci0gICAgICAgICAgICBXZWJDb3JlOjpG
aWxlU3lzdGVtOjpnZXRGaWxlU2l6ZShmaWxlUGF0aCwgZmlsZVNpemUpOwotICAgICAgICAgICAg
aWYgKCFmaWxlU2l6ZSkgewotICAgICAgICAgICAgICAgIFdlYkNvcmU6OkZpbGVTeXN0ZW06OmRl
bGV0ZUZpbGUoZmlsZVBhdGgpOwotICAgICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgICAg
IH0KIAogICAgICAgICAgICAgaWYgKGlzQmxvYikgeworICAgICAgICAgICAgICAgICsrYmxvYkNv
dW50OwogICAgICAgICAgICAgICAgIGJsb2JGaWx0ZXItPmFkZChoYXNoKTsKICAgICAgICAgICAg
ICAgICByZXR1cm47CiAgICAgICAgICAgICB9CiAKKyAgICAgICAgICAgICsrcmVjb3JkQ291bnQ7
CisKKyAgICAgICAgICAgIGlmIChzaG91bGRDb21wdXRlRXhhY3RSZWNvcmRzU2l6ZSkgeworICAg
ICAgICAgICAgICAgIGxvbmcgbG9uZyBmaWxlU2l6ZSA9IDA7CisgICAgICAgICAgICAgICAgV2Vi
Q29yZTo6RmlsZVN5c3RlbTo6Z2V0RmlsZVNpemUoZmlsZVBhdGgsIGZpbGVTaXplKTsKKyAgICAg
ICAgICAgICAgICByZWNvcmRzU2l6ZSArPSBmaWxlU2l6ZTsKKyAgICAgICAgICAgIH0KKwogICAg
ICAgICAgICAgcmVjb3JkRmlsdGVyLT5hZGQoaGFzaCk7Ci0gICAgICAgICAgICByZWNvcmRzU2l6
ZSArPSBmaWxlU2l6ZTsKLSAgICAgICAgICAgICsrY291bnQ7CiAgICAgICAgIH0pOwogCisgICAg
ICAgIGlmICghc2hvdWxkQ29tcHV0ZUV4YWN0UmVjb3Jkc1NpemUpCisgICAgICAgICAgICByZWNv
cmRzU2l6ZSA9IGVzdGltYXRlUmVjb3Jkc1NpemUocmVjb3JkQ291bnQsIGJsb2JDb3VudCk7CisK
ICAgICAgICAgUnVuTG9vcDo6bWFpbigpLmRpc3BhdGNoKFt0aGlzLCByZWNvcmRGaWx0ZXIgPSBX
VEZNb3ZlKHJlY29yZEZpbHRlciksIGJsb2JGaWx0ZXIgPSBXVEZNb3ZlKGJsb2JGaWx0ZXIpLCBy
ZWNvcmRzU2l6ZV0oKSBtdXRhYmxlIHsKICAgICAgICAgICAgIGZvciAoYXV0byYgcmVjb3JkRmls
dGVyS2V5IDogbV9yZWNvcmRGaWx0ZXJIYXNoZXNBZGRlZER1cmluZ1N5bmNocm9uaXphdGlvbikK
ICAgICAgICAgICAgICAgICByZWNvcmRGaWx0ZXItPmFkZChyZWNvcmRGaWx0ZXJLZXkpOwpAQCAt
MzIxLDcgKzMzOSw3IEBAIHZvaWQgU3RvcmFnZTo6c3luY2hyb25pemUoKQogCiAgICAgICAgIGRl
bGV0ZUVtcHR5UmVjb3Jkc0RpcmVjdG9yaWVzKHJlY29yZHNQYXRoKCkpOwogCi0gICAgICAgIExP
RyhOZXR3b3JrQ2FjaGVTdG9yYWdlLCAiKE5ldHdvcmtQcm9jZXNzKSBjYWNoZSBzeW5jaHJvbml6
YXRpb24gY29tcGxldGVkIHNpemU9JXp1IGNvdW50PSV1IiwgcmVjb3Jkc1NpemUsIGNvdW50KTsK
KyAgICAgICAgTE9HKE5ldHdvcmtDYWNoZVN0b3JhZ2UsICIoTmV0d29ya1Byb2Nlc3MpIGNhY2hl
IHN5bmNocm9uaXphdGlvbiBjb21wbGV0ZWQgc2l6ZT0lenUgcmVjb3JkQ291bnQ9JXUiLCByZWNv
cmRzU2l6ZSwgcmVjb3JkQ291bnQpOwogCiAgICAgICAgIFJ1bkxvb3A6Om1haW4oKS5kaXNwYXRj
aChbcHJvdGVjdGVkVGhpcyA9IFdURk1vdmUocHJvdGVjdGVkVGhpcyldIHsgfSk7CiAgICAgfSk7
CkBAIC03NTYsNyArNzc0LDYgQEAgYm9vbCBTdG9yYWdlOjpzaG91bGRTdG9yZUJvZHlBc0Jsb2Io
Y29ucwogewogICAgIGlmICghbV9jYW5Vc2VCbG9ic0ZvckZvckJvZHlEYXRhKQogICAgICAgICBy
ZXR1cm4gZmFsc2U7Ci0gICAgY29uc3Qgc2l6ZV90IG1heGltdW1JbmxpbmVCb2R5U2l6ZSB7IDE2
ICogMTAyNCB9OwogICAgIHJldHVybiBib2R5RGF0YS5zaXplKCkgPiBtYXhpbXVtSW5saW5lQm9k
eVNpemU7CiB9CiAK
</data>
<flag name="review"
          id="358425"
          type_id="1"
          status="+"
          setter="cdumez"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>340197</attachid>
            <date>2018-05-11 10:32:54 -0700</date>
            <delta_ts>2018-05-11 11:11:27 -0700</delta_ts>
            <desc>patch</desc>
            <filename>cache-less-stat-2.patch</filename>
            <type>text/plain</type>
            <size>5710</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMzE2OTQpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI2IEBACisyMDE4LTA1LTExICBBbnR0aSBLb2l2
aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBOZXR3b3JrIHByb2Nlc3Mgc2hvdWxk
IG5vdCBzdGF0KCkgYWxsIGNhY2hlIGZpbGVzIG9uIHN0YXJ0dXAgdG8gZmluZCB0aGVpciBzaXpl
cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg1NTQy
CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS80MDA5Mjk1Mz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBDaHJpcyBEdW1lei4KKworICAgICAgICBUaGlzIGlzIGRvbmUgdG8gY29tcHV0ZSBob3cgbXVj
aCBkaXNrIHNwYWNlIGEgY2FjaGUgaXMgdXNpbmcuIFdoaWxlIHRoZSBvcGVyYXRpb24gaGFwcGVu
cworICAgICAgICBpbiBhIGJhY2tncm91bmQgcHJpb3JpdHkgdGhyZWFkIGl0IGlzIHN0aWxsIHF1
aXRlIGEgYml0IG9mIHdvcmsuCisKKyAgICAgICAgTGFyZ2UgYm9kaWVzIGFyZSBzYXZlZCBpbiBz
ZXBhcmF0ZSBibG9iIGZpbGVzIHNvIHJlY29yZCBmaWxlIHNpemVzIGFyZSBjYXBwZWQuIFdlIGNh
biBhdm9pZCB3b3JrIGJ5CisgICAgICAgIGVzdGltYXRpbmcgdGhlaXIgc2l6ZSBpbnN0ZWFkIG9m
IGNvdW50aW5nIGl0IGV4YWN0bHkuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9jYWNoZS9O
ZXR3b3JrQ2FjaGVTdG9yYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0NhY2hlOjpl
c3RpbWF0ZVJlY29yZHNTaXplKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0NhY2hlOjpTdG9y
YWdlOjpzeW5jaHJvbml6ZSk6CisKKyAgICAgICAgICAgIFVzZSBzaXplIGVzdGltYXRpb24gaWYg
YmxvYiBzdG9yYWdlIGlzIGluIHVzZS4KKyAgICAgICAgICAgIFJlbW92ZSB0aGUgY29kZSB0aGF0
IHdvdWxkIGRlbGV0ZSBlbXB0eSBmaWxlcy4gTm9ybWFsIGNhY2hlIHNocmlua2luZyBoYW5kbGVz
IHRoaXMuCisKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0NhY2hlOjpTdG9yYWdlOjpzaG91bGRT
dG9yZUJvZHlBc0Jsb2IpOgorCiAyMDE4LTA1LTExICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFw
cGxlLmNvbT4KIAogICAgICAgICBOZXR3b3JrQ09SU1ByZWZsaWdodENoZWNrZXIgc2hvdWxkIHBy
b2NlZWQgd2hlbiBoYXZpbmcgYSBQcm90ZWN0aW9uU3BhY2VBdXRoZW50aWNhdGlvblNjaGVtZVNl
cnZlclRydXN0RXZhbHVhdGlvblJlcXVlc3RlZCBjaGFsbGVuZ2UKSW5kZXg6IFNvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlU3RvcmFnZS5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdG9y
YWdlLmNwcAkocmV2aXNpb24gMjMxNTUzKQorKysgU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy9jYWNoZS9OZXR3b3JrQ2FjaGVTdG9yYWdlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDUsNiAr
NDUsNyBAQCBzdGF0aWMgY29uc3QgY2hhciB2ZXJzaW9uRGlyZWN0b3J5UHJlZml4CiBzdGF0aWMg
Y29uc3QgY2hhciByZWNvcmRzRGlyZWN0b3J5TmFtZVtdID0gIlJlY29yZHMiOwogc3RhdGljIGNv
bnN0IGNoYXIgYmxvYnNEaXJlY3RvcnlOYW1lW10gPSAiQmxvYnMiOwogc3RhdGljIGNvbnN0IGNo
YXIgYmxvYlN1ZmZpeFtdID0gIi1ibG9iIjsKK2NvbnN0ZXhwciBzaXplX3QgbWF4aW11bUlubGlu
ZUJvZHlTaXplIHsgMTYgKiAxMDI0IH07CiAKIHN0YXRpYyBkb3VibGUgY29tcHV0ZVJlY29yZFdv
cnRoKEZpbGVUaW1lcyk7CiAKQEAgLTI2MSw2ICsyNjIsMTQgQEAgc2l6ZV90IFN0b3JhZ2U6OmFw
cHJveGltYXRlU2l6ZSgpIGNvbnN0CiAgICAgcmV0dXJuIG1fYXBwcm94aW1hdGVSZWNvcmRzU2l6
ZSArIG1fYmxvYlN0b3JhZ2UuYXBwcm94aW1hdGVTaXplKCk7CiB9CiAKK3N0YXRpYyBzaXplX3Qg
ZXN0aW1hdGVSZWNvcmRzU2l6ZSh1bnNpZ25lZCByZWNvcmRDb3VudCwgdW5zaWduZWQgYmxvYkNv
dW50KQoreworICAgIGF1dG8gaW5saW5lQm9keUNvdW50ID0gcmVjb3JkQ291bnQgLSBzdGQ6Om1p
bihibG9iQ291bnQsIHJlY29yZENvdW50KTsKKyAgICBhdXRvIGhlYWRlclNpemVzID0gcmVjb3Jk
Q291bnQgKiA0MDk2OworICAgIGF1dG8gaW5saW5lQm9keVNpemVzID0gKG1heGltdW1JbmxpbmVC
b2R5U2l6ZSAvIDIpICogaW5saW5lQm9keUNvdW50OworICAgIHJldHVybiBoZWFkZXJTaXplcyAr
IGlubGluZUJvZHlTaXplczsKK30KKwogdm9pZCBTdG9yYWdlOjpzeW5jaHJvbml6ZSgpCiB7CiAg
ICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKQEAgLTI3NCwxMCArMjgzLDE1IEBAIHZvaWQg
U3RvcmFnZTo6c3luY2hyb25pemUoKQogICAgIGJhY2tncm91bmRJT1F1ZXVlKCkuZGlzcGF0Y2go
W3RoaXMsIHByb3RlY3RlZFRoaXMgPSBtYWtlUmVmKCp0aGlzKV0gKCkgbXV0YWJsZSB7CiAgICAg
ICAgIGF1dG8gcmVjb3JkRmlsdGVyID0gc3RkOjptYWtlX3VuaXF1ZTxDb250ZW50c0ZpbHRlcj4o
KTsKICAgICAgICAgYXV0byBibG9iRmlsdGVyID0gc3RkOjptYWtlX3VuaXF1ZTxDb250ZW50c0Zp
bHRlcj4oKTsKKworICAgICAgICAvLyBNb3N0IG9mIHRoZSBkaXNrIHNwYWNlIHVzYWdlIGlzIGlu
IGJsb2JzIGlmIHdlIGFyZSB1c2luZyB0aGVtLiBBcHByb3hpbWF0ZSByZWNvcmRzIGZpbGUgc2l6
ZXMgdG8gYXZvaWQgZXhwZW5zaXZlIHN0YXQoKSBjYWxscy4KKyAgICAgICAgYm9vbCBzaG91bGRD
b21wdXRlRXhhY3RSZWNvcmRzU2l6ZSA9ICFtX2NhblVzZUJsb2JzRm9yRm9yQm9keURhdGE7CiAg
ICAgICAgIHNpemVfdCByZWNvcmRzU2l6ZSA9IDA7Ci0gICAgICAgIHVuc2lnbmVkIGNvdW50ID0g
MDsKKyAgICAgICAgdW5zaWduZWQgcmVjb3JkQ291bnQgPSAwOworICAgICAgICB1bnNpZ25lZCBi
bG9iQ291bnQgPSAwOworCiAgICAgICAgIFN0cmluZyBhbnlUeXBlOwotICAgICAgICB0cmF2ZXJz
ZVJlY29yZHNGaWxlcyhyZWNvcmRzUGF0aCgpLCBhbnlUeXBlLCBbJnJlY29yZEZpbHRlciwgJmJs
b2JGaWx0ZXIsICZyZWNvcmRzU2l6ZSwgJmNvdW50XShjb25zdCBTdHJpbmcmIGZpbGVOYW1lLCBj
b25zdCBTdHJpbmcmIGhhc2hTdHJpbmcsIGNvbnN0IFN0cmluZyYgdHlwZSwgYm9vbCBpc0Jsb2Is
IGNvbnN0IFN0cmluZyYgcmVjb3JkRGlyZWN0b3J5UGF0aCkgeworICAgICAgICB0cmF2ZXJzZVJl
Y29yZHNGaWxlcyhyZWNvcmRzUGF0aCgpLCBhbnlUeXBlLCBbJl0oY29uc3QgU3RyaW5nJiBmaWxl
TmFtZSwgY29uc3QgU3RyaW5nJiBoYXNoU3RyaW5nLCBjb25zdCBTdHJpbmcmIHR5cGUsIGJvb2wg
aXNCbG9iLCBjb25zdCBTdHJpbmcmIHJlY29yZERpcmVjdG9yeVBhdGgpIHsKICAgICAgICAgICAg
IGF1dG8gZmlsZVBhdGggPSBXZWJDb3JlOjpGaWxlU3lzdGVtOjpwYXRoQnlBcHBlbmRpbmdDb21w
b25lbnQocmVjb3JkRGlyZWN0b3J5UGF0aCwgZmlsZU5hbWUpOwogCiAgICAgICAgICAgICBLZXk6
Okhhc2hUeXBlIGhhc2g7CkBAIC0yODUsMjMgKzI5OSwyNyBAQCB2b2lkIFN0b3JhZ2U6OnN5bmNo
cm9uaXplKCkKICAgICAgICAgICAgICAgICBXZWJDb3JlOjpGaWxlU3lzdGVtOjpkZWxldGVGaWxl
KGZpbGVQYXRoKTsKICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICB9Ci0gICAg
ICAgICAgICBsb25nIGxvbmcgZmlsZVNpemUgPSAwOwotICAgICAgICAgICAgV2ViQ29yZTo6Rmls
ZVN5c3RlbTo6Z2V0RmlsZVNpemUoZmlsZVBhdGgsIGZpbGVTaXplKTsKLSAgICAgICAgICAgIGlm
ICghZmlsZVNpemUpIHsKLSAgICAgICAgICAgICAgICBXZWJDb3JlOjpGaWxlU3lzdGVtOjpkZWxl
dGVGaWxlKGZpbGVQYXRoKTsKLSAgICAgICAgICAgICAgICByZXR1cm47Ci0gICAgICAgICAgICB9
CiAKICAgICAgICAgICAgIGlmIChpc0Jsb2IpIHsKKyAgICAgICAgICAgICAgICArK2Jsb2JDb3Vu
dDsKICAgICAgICAgICAgICAgICBibG9iRmlsdGVyLT5hZGQoaGFzaCk7CiAgICAgICAgICAgICAg
ICAgcmV0dXJuOwogICAgICAgICAgICAgfQogCisgICAgICAgICAgICArK3JlY29yZENvdW50Owor
CisgICAgICAgICAgICBpZiAoc2hvdWxkQ29tcHV0ZUV4YWN0UmVjb3Jkc1NpemUpIHsKKyAgICAg
ICAgICAgICAgICBsb25nIGxvbmcgZmlsZVNpemUgPSAwOworICAgICAgICAgICAgICAgIFdlYkNv
cmU6OkZpbGVTeXN0ZW06OmdldEZpbGVTaXplKGZpbGVQYXRoLCBmaWxlU2l6ZSk7CisgICAgICAg
ICAgICAgICAgcmVjb3Jkc1NpemUgKz0gZmlsZVNpemU7CisgICAgICAgICAgICB9CisKICAgICAg
ICAgICAgIHJlY29yZEZpbHRlci0+YWRkKGhhc2gpOwotICAgICAgICAgICAgcmVjb3Jkc1NpemUg
Kz0gZmlsZVNpemU7Ci0gICAgICAgICAgICArK2NvdW50OwogICAgICAgICB9KTsKIAorICAgICAg
ICBpZiAoIXNob3VsZENvbXB1dGVFeGFjdFJlY29yZHNTaXplKQorICAgICAgICAgICAgcmVjb3Jk
c1NpemUgPSBlc3RpbWF0ZVJlY29yZHNTaXplKHJlY29yZENvdW50LCBibG9iQ291bnQpOworCiAg
ICAgICAgIFJ1bkxvb3A6Om1haW4oKS5kaXNwYXRjaChbdGhpcywgcmVjb3JkRmlsdGVyID0gV1RG
TW92ZShyZWNvcmRGaWx0ZXIpLCBibG9iRmlsdGVyID0gV1RGTW92ZShibG9iRmlsdGVyKSwgcmVj
b3Jkc1NpemVdKCkgbXV0YWJsZSB7CiAgICAgICAgICAgICBmb3IgKGF1dG8mIHJlY29yZEZpbHRl
cktleSA6IG1fcmVjb3JkRmlsdGVySGFzaGVzQWRkZWREdXJpbmdTeW5jaHJvbml6YXRpb24pCiAg
ICAgICAgICAgICAgICAgcmVjb3JkRmlsdGVyLT5hZGQocmVjb3JkRmlsdGVyS2V5KTsKQEAgLTMy
MSw3ICszMzksNyBAQCB2b2lkIFN0b3JhZ2U6OnN5bmNocm9uaXplKCkKIAogICAgICAgICBkZWxl
dGVFbXB0eVJlY29yZHNEaXJlY3RvcmllcyhyZWNvcmRzUGF0aCgpKTsKIAotICAgICAgICBMT0co
TmV0d29ya0NhY2hlU3RvcmFnZSwgIihOZXR3b3JrUHJvY2VzcykgY2FjaGUgc3luY2hyb25pemF0
aW9uIGNvbXBsZXRlZCBzaXplPSV6dSBjb3VudD0ldSIsIHJlY29yZHNTaXplLCBjb3VudCk7Cisg
ICAgICAgIExPRyhOZXR3b3JrQ2FjaGVTdG9yYWdlLCAiKE5ldHdvcmtQcm9jZXNzKSBjYWNoZSBz
eW5jaHJvbml6YXRpb24gY29tcGxldGVkIHNpemU9JXp1IHJlY29yZENvdW50PSV1IiwgcmVjb3Jk
c1NpemUsIHJlY29yZENvdW50KTsKIAogICAgICAgICBSdW5Mb29wOjptYWluKCkuZGlzcGF0Y2go
W3Byb3RlY3RlZFRoaXMgPSBXVEZNb3ZlKHByb3RlY3RlZFRoaXMpXSB7IH0pOwogICAgIH0pOwpA
QCAtNzU2LDcgKzc3NCw2IEBAIGJvb2wgU3RvcmFnZTo6c2hvdWxkU3RvcmVCb2R5QXNCbG9iKGNv
bnMKIHsKICAgICBpZiAoIW1fY2FuVXNlQmxvYnNGb3JGb3JCb2R5RGF0YSkKICAgICAgICAgcmV0
dXJuIGZhbHNlOwotICAgIGNvbnN0IHNpemVfdCBtYXhpbXVtSW5saW5lQm9keVNpemUgeyAxNiAq
IDEwMjQgfTsKICAgICByZXR1cm4gYm9keURhdGEuc2l6ZSgpID4gbWF4aW11bUlubGluZUJvZHlT
aXplOwogfQogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>