<?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>208619</bug_id>
          
          <creation_ts>2020-03-04 17:40:09 -0800</creation_ts>
          <short_desc>WebsiteDataStore methods often create process pools and launch network processes unnecessarily</short_desc>
          <delta_ts>2020-03-05 08:54:51 -0800</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>208610</dependson>
          <blocked>208541</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>achristensen</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>ggaren</cc>
    
    <cc>sam</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1625883</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-03-04 17:40:09 -0800</bug_when>
    <thetext>WebsiteDataStore methods often create process pools and launch network processes unnecessarily.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625887</commentid>
    <comment_count>1</comment_count>
      <attachid>392523</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-03-04 17:56:11 -0800</bug_when>
    <thetext>Created attachment 392523
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625957</commentid>
    <comment_count>2</comment_count>
      <attachid>392523</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-03-04 23:06:20 -0800</bug_when>
    <thetext>Comment on attachment 392523
Patch

Clearing flags on attachment: 392523

Committed r257904: &lt;https://trac.webkit.org/changeset/257904&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625958</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-03-04 23:06:21 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625959</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-03-04 23:07:15 -0800</bug_when>
    <thetext>&lt;rdar://problem/60073109&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1626095</commentid>
    <comment_count>5</comment_count>
      <attachid>392523</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-03-05 08:52:01 -0800</bug_when>
    <thetext>Comment on attachment 392523
Patch

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

&gt; Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp:1256
&gt; +    for (auto&amp; processPool : ensureProcessPools())

This one is still ensureProcessPools. I’m presuming that’s intentional, but I don’t see any explanation of that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1626099</commentid>
    <comment_count>6</comment_count>
      <attachid>392523</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-03-05 08:54:51 -0800</bug_when>
    <thetext>Comment on attachment 392523
Patch

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

&gt;&gt; Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp:1256
&gt;&gt; +    for (auto&amp; processPool : ensureProcessPools())
&gt; 
&gt; This one is still ensureProcessPools. I’m presuming that’s intentional, but I don’t see any explanation of that.

This actually goes and adds the prevalent resource in the ITP database on disk. Therefore, creating a process pool and a network process to go add this entry is not a no-op.

In practice, this gets called by JS via testRunner so we always have a process pool / network process when this gets called so this is not contributing to Bug 208541 (which is what I am trying to address).</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>392523</attachid>
            <date>2020-03-04 17:56:11 -0800</date>
            <delta_ts>2020-03-04 23:06:20 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208619-20200304175610.patch</filename>
            <type>text/plain</type>
            <size>10312</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU3ODc5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDBhMjdlOTFlZTQ4MGM5MWQ2
M2U0OTExNmJhMmM1MjliNGM5YTZjYzIuLjUyYzA1MDc5NmIzOGFiNzY3NDUwOTAyMTA2YjYyY2Fi
YjE3ZGZmNTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzMgQEAKKzIwMjAtMDMtMDQgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBXZWJzaXRlRGF0YVN0b3JlIG1ldGhv
ZHMgb2Z0ZW4gY3JlYXRlIHByb2Nlc3MgcG9vbHMgYW5kIGxhdW5jaCBuZXR3b3JrIHByb2Nlc3Nl
cyB1bm5lY2Vzc2FyaWx5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMDg2MTkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBUaGVzZSBtZXRob2RzIHdlcmUgcG90ZW50aWFsbHkgY3JlYXRpbmcgYSB0ZW1wb3Jh
cnkgV2ViUHJvY2Vzc1Bvb2wgb2JqZWN0IGFuZCBsYXVuY2hpbmcgYSBuZXR3b3JrCisgICAgICAg
IHByb2Nlc3Mgb25seSB0byBnbyBjaGFuZ2Ugc29tZXRoaW5nIGluIG1lbW9yeSBpbiB0aGUgbmV0
d29yayBwcm9jZXNzLiBTaW5jZSB0aGUgbmV3bHkgY3JlYXRlZAorICAgICAgICBXZWJQcm9jZXNz
UG9vbCBpcyB0ZW1wb3JhcnksIGl0IGdldHMgZGVzdHJveWVkIGFzIHNvb24gYXMgd2UgZ2V0IG91
dCBvZiB0aGUgZm9yIGxvb3AgYW5kIHRoZQorICAgICAgICBuZXR3b3JrIGdvIGF3YXkgdG9vLiBU
aGVyZWZvcmUsIHRoZSBpbmZvcm1hdGlvbiBpbiBtZW1vcnkgb2YgdGhlIG5ldyBuZXR3b3JrIHBy
b2Nlc3Mgd291bGQgbm90CisgICAgICAgIHN1cnZpdmUuIFRob3NlIG1ldGhvZHMgc2hvdWxkIG5l
dmVyIGJlIGNyZWF0ZWQgYSBwcm9jZXNzIHBvb2wgYW5kIHRoaXMgcGF0Y2ggZml4ZXMgdGhpcy4K
KworICAgICAgICAqIFVJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmNwcDoK
KyAgICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6c2V0TWF4U3RhdGlzdGljc0VudHJp
ZXMpOgorICAgICAgICAoV2ViS2l0OjpXZWJzaXRlRGF0YVN0b3JlOjpzZXRQcnVuZUVudHJpZXNE
b3duVG8pOgorICAgICAgICAoV2ViS2l0OjpXZWJzaXRlRGF0YVN0b3JlOjpzZXRHcmFuZGZhdGhl
cmluZ1RpbWUpOgorICAgICAgICAoV2ViS2l0OjpXZWJzaXRlRGF0YVN0b3JlOjpzZXRNaW5pbXVt
VGltZUJldHdlZW5EYXRhUmVjb3Jkc1JlbW92YWwpOgorICAgICAgICAoV2ViS2l0OjpXZWJzaXRl
RGF0YVN0b3JlOjpzZXRQcmV2YWxlbnRSZXNvdXJjZSk6CisgICAgICAgIChXZWJLaXQ6OldlYnNp
dGVEYXRhU3RvcmU6OnNldFZlcnlQcmV2YWxlbnRSZXNvdXJjZSk6CisgICAgICAgIChXZWJLaXQ6
OldlYnNpdGVEYXRhU3RvcmU6OnNldFNob3VsZENsYXNzaWZ5UmVzb3VyY2VzQmVmb3JlRGF0YVJl
Y29yZHNSZW1vdmFsKToKKyAgICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6c2V0Tm90
aWZ5UGFnZXNXaGVuRGF0YVJlY29yZHNXZXJlU2Nhbm5lZCk6CisgICAgICAgIChXZWJLaXQ6Oldl
YnNpdGVEYXRhU3RvcmU6OnNldElzUnVubmluZ1Jlc291cmNlTG9hZFN0YXRpc3RpY3NUZXN0KToK
KyAgICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6c2V0Tm90aWZ5UGFnZXNXaGVuVGVs
ZW1ldHJ5V2FzQ2FwdHVyZWQpOgorICAgICAgICAoV2ViS2l0OjpXZWJzaXRlRGF0YVN0b3JlOjpn
ZXRBbGxTdG9yYWdlQWNjZXNzRW50cmllcyk6CisgICAgICAgIChXZWJLaXQ6OldlYnNpdGVEYXRh
U3RvcmU6OnNldFRpbWVUb0xpdmVVc2VySW50ZXJhY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpX
ZWJzaXRlRGF0YVN0b3JlOjpzZXRDYWNoZU1heEFnZUNhcEZvclByZXZhbGVudFJlc291cmNlcyk6
CisgICAgICAgIChXZWJLaXQ6OldlYnNpdGVEYXRhU3RvcmU6OnNldFJlc291cmNlTG9hZFN0YXRp
c3RpY3NEZWJ1Z01vZGUpOgorICAgICAgICAoV2ViS2l0OjpXZWJzaXRlRGF0YVN0b3JlOjpjbGVh
clJlc291cmNlTG9hZFN0YXRpc3RpY3NJbldlYlByb2Nlc3Nlcyk6CisKIDIwMjAtMDMtMDQgIENo
cmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBDb25zdHJ1Y3QgZmV3ZXIg
dW5uZWNlc3NhcnkgdGVtcG9yYXJ5IFdlYlByb2Nlc3NQb29sIG9iamVjdHMgaW4gV2Vic2l0ZURh
dGFTdG9yZSBpbXBsZW1lbnRhdGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmNwcAppbmRleCA2NjA0NWVlM2NhZDAy
Mjg2MGNkM2RiMzY1NDBjODFkNzNmMTAwYTNmLi4wNThlNDlmODczZTMzNmMxNzRlYjQyODE4ZjRl
NWExZjJlYzIwYzYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRl
RGF0YS9XZWJzaXRlRGF0YVN0b3JlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9X
ZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmNwcApAQCAtMTE2Miw3ICsxMTYyLDcgQEAgdm9p
ZCBXZWJzaXRlRGF0YVN0b3JlOjpzZXRNYXhTdGF0aXN0aWNzRW50cmllcyhzaXplX3QgbWF4aW11
bUVudHJ5Q291bnQsIENvbXBsZXQKIAogICAgIGF1dG8gY2FsbGJhY2tBZ2dyZWdhdG9yID0gQ2Fs
bGJhY2tBZ2dyZWdhdG9yOjpjcmVhdGUoV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOwogCi0g
ICAgZm9yIChhdXRvJiBwcm9jZXNzUG9vbCA6IGVuc3VyZVByb2Nlc3NQb29scygpKQorICAgIGZv
ciAoYXV0byYgcHJvY2Vzc1Bvb2wgOiBwcm9jZXNzUG9vbHMoKSkKICAgICAgICAgcHJvY2Vzc1Bv
b2wtPmVuc3VyZU5ldHdvcmtQcm9jZXNzKCkuc2V0TWF4U3RhdGlzdGljc0VudHJpZXMobV9zZXNz
aW9uSUQsIG1heGltdW1FbnRyeUNvdW50LCBbcHJvY2Vzc1Bvb2wsIGNhbGxiYWNrQWdncmVnYXRv
ciA9IGNhbGxiYWNrQWdncmVnYXRvci5jb3B5UmVmKCldIHsgfSk7CiB9CiAKQEAgLTExNzIsOSAr
MTE3Miw4IEBAIHZvaWQgV2Vic2l0ZURhdGFTdG9yZTo6c2V0UHJ1bmVFbnRyaWVzRG93blRvKHNp
emVfdCBwcnVuZVRhcmdldENvdW50LCBDb21wbGV0aW9uCiAgICAgCiAgICAgYXV0byBjYWxsYmFj
a0FnZ3JlZ2F0b3IgPSBDYWxsYmFja0FnZ3JlZ2F0b3I6OmNyZWF0ZShXVEZNb3ZlKGNvbXBsZXRp
b25IYW5kbGVyKSk7CiAKLSAgICBmb3IgKGF1dG8mIHByb2Nlc3NQb29sIDogZW5zdXJlUHJvY2Vz
c1Bvb2xzKCkpIHsKKyAgICBmb3IgKGF1dG8mIHByb2Nlc3NQb29sIDogcHJvY2Vzc1Bvb2xzKCkp
CiAgICAgICAgIHByb2Nlc3NQb29sLT5lbnN1cmVOZXR3b3JrUHJvY2VzcygpLnNldFBydW5lRW50
cmllc0Rvd25UbyhtX3Nlc3Npb25JRCwgcHJ1bmVUYXJnZXRDb3VudCwgW3Byb2Nlc3NQb29sLCBj
YWxsYmFja0FnZ3JlZ2F0b3IgPSBjYWxsYmFja0FnZ3JlZ2F0b3IuY29weVJlZigpXSB7IH0pOwot
ICAgIH0KIH0KIAogdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpzZXRHcmFuZGZhdGhlcmluZ1RpbWUo
U2Vjb25kcyBzZWNvbmRzLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhh
bmRsZXIpCkBAIC0xMTgzLDcgKzExODIsNyBAQCB2b2lkIFdlYnNpdGVEYXRhU3RvcmU6OnNldEdy
YW5kZmF0aGVyaW5nVGltZShTZWNvbmRzIHNlY29uZHMsIENvbXBsZXRpb25IYW5kbGVyPAogCiAg
ICAgYXV0byBjYWxsYmFja0FnZ3JlZ2F0b3IgPSBDYWxsYmFja0FnZ3JlZ2F0b3I6OmNyZWF0ZShX
VEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CiAKLSAgICBmb3IgKGF1dG8mIHByb2Nlc3NQb29s
IDogZW5zdXJlUHJvY2Vzc1Bvb2xzKCkpCisgICAgZm9yIChhdXRvJiBwcm9jZXNzUG9vbCA6IHBy
b2Nlc3NQb29scygpKQogICAgICAgICBwcm9jZXNzUG9vbC0+ZW5zdXJlTmV0d29ya1Byb2Nlc3Mo
KS5zZXRHcmFuZGZhdGhlcmluZ1RpbWUobV9zZXNzaW9uSUQsIHNlY29uZHMsIFtwcm9jZXNzUG9v
bCwgY2FsbGJhY2tBZ2dyZWdhdG9yID0gY2FsbGJhY2tBZ2dyZWdhdG9yLmNvcHlSZWYoKV0geyB9
KTsKIH0KIApAQCAtMTE5Myw3ICsxMTkyLDcgQEAgdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpzZXRN
aW5pbXVtVGltZUJldHdlZW5EYXRhUmVjb3Jkc1JlbW92YWwoU2Vjb25kcyBzZWNvbmRzLAogCiAg
ICAgYXV0byBjYWxsYmFja0FnZ3JlZ2F0b3IgPSBDYWxsYmFja0FnZ3JlZ2F0b3I6OmNyZWF0ZShX
VEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CiAKLSAgICBmb3IgKGF1dG8mIHByb2Nlc3NQb29s
IDogZW5zdXJlUHJvY2Vzc1Bvb2xzKCkpCisgICAgZm9yIChhdXRvJiBwcm9jZXNzUG9vbCA6IHBy
b2Nlc3NQb29scygpKQogICAgICAgICBwcm9jZXNzUG9vbC0+ZW5zdXJlTmV0d29ya1Byb2Nlc3Mo
KS5zZXRNaW5pbXVtVGltZUJldHdlZW5EYXRhUmVjb3Jkc1JlbW92YWwobV9zZXNzaW9uSUQsIHNl
Y29uZHMsIFtwcm9jZXNzUG9vbCwgY2FsbGJhY2tBZ2dyZWdhdG9yID0gY2FsbGJhY2tBZ2dyZWdh
dG9yLmNvcHlSZWYoKV0geyB9KTsKIH0KICAgICAKQEAgLTEyNTQsOSArMTI1Myw4IEBAIHZvaWQg
V2Vic2l0ZURhdGFTdG9yZTo6c2V0UHJldmFsZW50UmVzb3VyY2UoY29uc3QgVVJMJiB1cmwsIENv
bXBsZXRpb25IYW5kbGVyPHZvCiAgICAgCiAgICAgYXV0byBjYWxsYmFja0FnZ3JlZ2F0b3IgPSBD
YWxsYmFja0FnZ3JlZ2F0b3I6OmNyZWF0ZShXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CiAK
LSAgICBmb3IgKGF1dG8mIHByb2Nlc3NQb29sIDogZW5zdXJlUHJvY2Vzc1Bvb2xzKCkpIHsKKyAg
ICBmb3IgKGF1dG8mIHByb2Nlc3NQb29sIDogZW5zdXJlUHJvY2Vzc1Bvb2xzKCkpCiAgICAgICAg
IHByb2Nlc3NQb29sLT5lbnN1cmVOZXR3b3JrUHJvY2VzcygpLnNldFByZXZhbGVudFJlc291cmNl
KG1fc2Vzc2lvbklELCBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiB7IHVybCB9LCBbcHJvY2Vz
c1Bvb2wsIGNhbGxiYWNrQWdncmVnYXRvciA9IGNhbGxiYWNrQWdncmVnYXRvci5jb3B5UmVmKCld
IHsgfSk7Ci0gICAgfQogfQogCiB2b2lkIFdlYnNpdGVEYXRhU3RvcmU6OnNldFByZXZhbGVudFJl
c291cmNlRm9yRGVidWdNb2RlKGNvbnN0IFVSTCYgdXJsLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCkBAIC0xMzA1LDggKzEzMDMsOCBAQCB2b2lkIFdlYnNp
dGVEYXRhU3RvcmU6OnNldFZlcnlQcmV2YWxlbnRSZXNvdXJjZShjb25zdCBVUkwmIHVybCwgQ29t
cGxldGlvbkhhbmRsZQogICAgIGF1dG8gY2FsbGJhY2tBZ2dyZWdhdG9yID0gQ2FsbGJhY2tBZ2dy
ZWdhdG9yOjpjcmVhdGUoV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOwogICAgIAogICAgIGZv
ciAoYXV0byYgcHJvY2Vzc1Bvb2wgOiBwcm9jZXNzUG9vbHMoKSkgewotICAgICAgICBpZiAoYXV0
byogcHJvY2VzcyA9IHByb2Nlc3NQb29sLT5uZXR3b3JrUHJvY2VzcygpKQotICAgICAgICAgICAg
cHJvY2Vzcy0+c2V0VmVyeVByZXZhbGVudFJlc291cmNlKG1fc2Vzc2lvbklELCBXZWJDb3JlOjpS
ZWdpc3RyYWJsZURvbWFpbiB7IHVybCB9LCBbcHJvY2Vzc1Bvb2wsIGNhbGxiYWNrQWdncmVnYXRv
ciA9IGNhbGxiYWNrQWdncmVnYXRvci5jb3B5UmVmKCldIHsgfSk7CisgICAgICAgIGlmIChhdXRv
KiBuZXR3b3JrUHJvY2VzcyA9IHByb2Nlc3NQb29sLT5uZXR3b3JrUHJvY2VzcygpKQorICAgICAg
ICAgICAgbmV0d29ya1Byb2Nlc3MtPnNldFZlcnlQcmV2YWxlbnRSZXNvdXJjZShtX3Nlc3Npb25J
RCwgV2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4geyB1cmwgfSwgW3Byb2Nlc3NQb29sLCBjYWxs
YmFja0FnZ3JlZ2F0b3IgPSBjYWxsYmFja0FnZ3JlZ2F0b3IuY29weVJlZigpXSB7IH0pOwogICAg
IH0KIH0KIApAQCAtMTMxNiw3ICsxMzE0LDcgQEAgdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpzZXRT
aG91bGRDbGFzc2lmeVJlc291cmNlc0JlZm9yZURhdGFSZWNvcmRzUmVtb3ZhbChib29sIHYKICAg
ICAKICAgICBhdXRvIGNhbGxiYWNrQWdncmVnYXRvciA9IENhbGxiYWNrQWdncmVnYXRvcjo6Y3Jl
YXRlKFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKIAotICAgIGZvciAoYXV0byYgcHJvY2Vz
c1Bvb2wgOiBlbnN1cmVQcm9jZXNzUG9vbHMoKSkKKyAgICBmb3IgKGF1dG8mIHByb2Nlc3NQb29s
IDogcHJvY2Vzc1Bvb2xzKCkpCiAgICAgICAgIHByb2Nlc3NQb29sLT5lbnN1cmVOZXR3b3JrUHJv
Y2VzcygpLnNldFNob3VsZENsYXNzaWZ5UmVzb3VyY2VzQmVmb3JlRGF0YVJlY29yZHNSZW1vdmFs
KG1fc2Vzc2lvbklELCB2YWx1ZSwgW3Byb2Nlc3NQb29sLCBjYWxsYmFja0FnZ3JlZ2F0b3IgPSBj
YWxsYmFja0FnZ3JlZ2F0b3IuY29weVJlZigpXSB7IH0pOwogfQogCkBAIC0xNjE3LDcgKzE2MTUs
NyBAQCB2b2lkIFdlYnNpdGVEYXRhU3RvcmU6OnNldE5vdGlmeVBhZ2VzV2hlbkRhdGFSZWNvcmRz
V2VyZVNjYW5uZWQoYm9vbCB2YWx1ZSwgQ29tcAogewogICAgIGF1dG8gY2FsbGJhY2tBZ2dyZWdh
dG9yID0gQ2FsbGJhY2tBZ2dyZWdhdG9yOjpjcmVhdGUoV1RGTW92ZShjb21wbGV0aW9uSGFuZGxl
cikpOwogCi0gICAgZm9yIChhdXRvJiBwcm9jZXNzUG9vbCA6IGVuc3VyZVByb2Nlc3NQb29scygp
KQorICAgIGZvciAoYXV0byYgcHJvY2Vzc1Bvb2wgOiBwcm9jZXNzUG9vbHMoKSkKICAgICAgICAg
cHJvY2Vzc1Bvb2wtPmVuc3VyZU5ldHdvcmtQcm9jZXNzKCkuc2V0Tm90aWZ5UGFnZXNXaGVuRGF0
YVJlY29yZHNXZXJlU2Nhbm5lZChtX3Nlc3Npb25JRCwgdmFsdWUsIFtwcm9jZXNzUG9vbCwgY2Fs
bGJhY2tBZ2dyZWdhdG9yID0gY2FsbGJhY2tBZ2dyZWdhdG9yLmNvcHlSZWYoKV0geyB9KTsKIH0K
IApAQCAtMTYyNiw3ICsxNjI0LDcgQEAgdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpzZXRJc1J1bm5p
bmdSZXNvdXJjZUxvYWRTdGF0aXN0aWNzVGVzdChib29sIHZhbHVlLCBDb21wbGUKICAgICB1c2VF
eHBsaWNpdElUUFN0YXRlKCk7CiAgICAgYXV0byBjYWxsYmFja0FnZ3JlZ2F0b3IgPSBDYWxsYmFj
a0FnZ3JlZ2F0b3I6OmNyZWF0ZShXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CiAgICAgCi0g
ICAgZm9yIChhdXRvJiBwcm9jZXNzUG9vbCA6IGVuc3VyZVByb2Nlc3NQb29scygpKQorICAgIGZv
ciAoYXV0byYgcHJvY2Vzc1Bvb2wgOiBwcm9jZXNzUG9vbHMoKSkKICAgICAgICAgcHJvY2Vzc1Bv
b2wtPmVuc3VyZU5ldHdvcmtQcm9jZXNzKCkuc2V0SXNSdW5uaW5nUmVzb3VyY2VMb2FkU3RhdGlz
dGljc1Rlc3QobV9zZXNzaW9uSUQsIHZhbHVlLCBbcHJvY2Vzc1Bvb2wsIGNhbGxiYWNrQWdncmVn
YXRvciA9IGNhbGxiYWNrQWdncmVnYXRvci5jb3B5UmVmKCldIHsgfSk7CiB9CiAKQEAgLTE2MzQs
NyArMTYzMiw3IEBAIHZvaWQgV2Vic2l0ZURhdGFTdG9yZTo6c2V0Tm90aWZ5UGFnZXNXaGVuVGVs
ZW1ldHJ5V2FzQ2FwdHVyZWQoYm9vbCB2YWx1ZSwgQ29tcGxlCiB7CiAgICAgYXV0byBjYWxsYmFj
a0FnZ3JlZ2F0b3IgPSBDYWxsYmFja0FnZ3JlZ2F0b3I6OmNyZWF0ZShXVEZNb3ZlKGNvbXBsZXRp
b25IYW5kbGVyKSk7CiAgICAgCi0gICAgZm9yIChhdXRvJiBwcm9jZXNzUG9vbCA6IGVuc3VyZVBy
b2Nlc3NQb29scygpKQorICAgIGZvciAoYXV0byYgcHJvY2Vzc1Bvb2wgOiBwcm9jZXNzUG9vbHMo
KSkKICAgICAgICAgcHJvY2Vzc1Bvb2wtPmVuc3VyZU5ldHdvcmtQcm9jZXNzKCkuc2V0Tm90aWZ5
UGFnZXNXaGVuVGVsZW1ldHJ5V2FzQ2FwdHVyZWQobV9zZXNzaW9uSUQsIHZhbHVlLCBbcHJvY2Vz
c1Bvb2wsIGNhbGxiYWNrQWdncmVnYXRvciA9IGNhbGxiYWNrQWdncmVnYXRvci5jb3B5UmVmKCld
IHsgfSk7CiB9CiAKQEAgLTE2NDUsOSArMTY0Myw4IEBAIHZvaWQgV2Vic2l0ZURhdGFTdG9yZTo6
Z2V0QWxsU3RvcmFnZUFjY2Vzc0VudHJpZXMoV2ViUGFnZVByb3h5SWRlbnRpZmllciBwYWdlSUQs
CiAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKHsgfSk7CiAgICAgICAgIHJldHVybjsKICAgICB9
Ci0gICAgCi0gICAgYXV0byYgbmV0d29ya1Byb2Nlc3MgPSB3ZWJQYWdlLT5wcm9jZXNzKCkucHJv
Y2Vzc1Bvb2woKS5lbnN1cmVOZXR3b3JrUHJvY2VzcygpOwotICAgIG5ldHdvcmtQcm9jZXNzLmdl
dEFsbFN0b3JhZ2VBY2Nlc3NFbnRyaWVzKG1fc2Vzc2lvbklELCBXVEZNb3ZlKGNvbXBsZXRpb25I
YW5kbGVyKSk7CisKKyAgICB3ZWJQYWdlLT5wcm9jZXNzKCkucHJvY2Vzc1Bvb2woKS5lbnN1cmVO
ZXR3b3JrUHJvY2VzcygpLmdldEFsbFN0b3JhZ2VBY2Nlc3NFbnRyaWVzKG1fc2Vzc2lvbklELCBX
VEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CiB9CiAKIApAQCAtMTY1NSw3ICsxNjUyLDcgQEAg
dm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpzZXRUaW1lVG9MaXZlVXNlckludGVyYWN0aW9uKFNlY29u
ZHMgc2Vjb25kcywgQ29tcGxldGlvbkgKIHsKICAgICBhdXRvIGNhbGxiYWNrQWdncmVnYXRvciA9
IENhbGxiYWNrQWdncmVnYXRvcjo6Y3JlYXRlKFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsK
ICAgICAKLSAgICBmb3IgKGF1dG8mIHByb2Nlc3NQb29sIDogZW5zdXJlUHJvY2Vzc1Bvb2xzKCkp
CisgICAgZm9yIChhdXRvJiBwcm9jZXNzUG9vbCA6IHByb2Nlc3NQb29scygpKQogICAgICAgICBw
cm9jZXNzUG9vbC0+ZW5zdXJlTmV0d29ya1Byb2Nlc3MoKS5zZXRUaW1lVG9MaXZlVXNlckludGVy
YWN0aW9uKG1fc2Vzc2lvbklELCBzZWNvbmRzLCBbY2FsbGJhY2tBZ2dyZWdhdG9yID0gY2FsbGJh
Y2tBZ2dyZWdhdG9yLmNvcHlSZWYoKV0geyB9KTsKIH0KIApAQCAtMTg2Nyw3ICsxODY0LDcgQEAg
dm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpzZXRDYWNoZU1heEFnZUNhcEZvclByZXZhbGVudFJlc291
cmNlcyhTZWNvbmRzIHNlY29uZHMsIEMKICNpZiBFTkFCTEUoUkVTT1VSQ0VfTE9BRF9TVEFUSVNU
SUNTKQogICAgIGF1dG8gY2FsbGJhY2tBZ2dyZWdhdG9yID0gQ2FsbGJhY2tBZ2dyZWdhdG9yOjpj
cmVhdGUoV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOwogICAgIAotICAgIGZvciAoYXV0byYg
cHJvY2Vzc1Bvb2wgOiBlbnN1cmVQcm9jZXNzUG9vbHMoKSkKKyAgICBmb3IgKGF1dG8mIHByb2Nl
c3NQb29sIDogcHJvY2Vzc1Bvb2xzKCkpCiAgICAgICAgIHByb2Nlc3NQb29sLT5lbnN1cmVOZXR3
b3JrUHJvY2VzcygpLnNldENhY2hlTWF4QWdlQ2FwRm9yUHJldmFsZW50UmVzb3VyY2VzKG1fc2Vz
c2lvbklELCBzZWNvbmRzLCBbY2FsbGJhY2tBZ2dyZWdhdG9yID0gY2FsbGJhY2tBZ2dyZWdhdG9y
LmNvcHlSZWYoKV0geyB9KTsKICNlbHNlCiAgICAgVU5VU0VEX1BBUkFNKHNlY29uZHMpOwpAQCAt
MjA3Miw3ICsyMDY5LDcgQEAgdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpzZXRSZXNvdXJjZUxvYWRT
dGF0aXN0aWNzRGVidWdNb2RlKGJvb2wgZW5hYmxlZCwgQ29tcGxldGkKIAogICAgIGF1dG8gY2Fs
bGJhY2tBZ2dyZWdhdG9yID0gQ2FsbGJhY2tBZ2dyZWdhdG9yOjpjcmVhdGUoV1RGTW92ZShjb21w
bGV0aW9uSGFuZGxlcikpOwogICAgIAotICAgIGZvciAoYXV0byYgcHJvY2Vzc1Bvb2wgOiBlbnN1
cmVQcm9jZXNzUG9vbHMoKSkKKyAgICBmb3IgKGF1dG8mIHByb2Nlc3NQb29sIDogcHJvY2Vzc1Bv
b2xzKCkpCiAgICAgICAgIHByb2Nlc3NQb29sLT5lbnN1cmVOZXR3b3JrUHJvY2VzcygpLnNldFJl
c291cmNlTG9hZFN0YXRpc3RpY3NEZWJ1Z01vZGUobV9zZXNzaW9uSUQsIGVuYWJsZWQsIFtjYWxs
YmFja0FnZ3JlZ2F0b3IgPSBjYWxsYmFja0FnZ3JlZ2F0b3IuY29weVJlZigpXSB7IH0pOwogI2Vs
c2UKICAgICBVTlVTRURfUEFSQU0oZW5hYmxlZCk7CkBAIC0yMTEwLDcgKzIxMDcsNyBAQCB2b2lk
IFdlYnNpdGVEYXRhU3RvcmU6OmxvZ1Rlc3RpbmdFdmVudChjb25zdCBTdHJpbmcmIGV2ZW50KQog
dm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpjbGVhclJlc291cmNlTG9hZFN0YXRpc3RpY3NJbldlYlBy
b2Nlc3NlcyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY2FsbGJhY2spCiB7CiAgICAgaWYg
KHJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkKCkpIHsKLSAgICAgICAgZm9yIChhdXRvJiBw
cm9jZXNzUG9vbCA6IGVuc3VyZVByb2Nlc3NQb29scygpKQorICAgICAgICBmb3IgKGF1dG8mIHBy
b2Nlc3NQb29sIDogcHJvY2Vzc1Bvb2xzKCkpCiAgICAgICAgICAgICBwcm9jZXNzUG9vbC0+Y2xl
YXJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzKCk7CiAgICAgfQogICAgIGNhbGxiYWNrKCk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>