<?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>206526</bug_id>
          
          <creation_ts>2020-01-21 05:39:02 -0800</creation_ts>
          <short_desc>[LFC][Integration] Use InlineFormattingContext directly</short_desc>
          <delta_ts>2020-01-21 08:08:13 -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>Layout and Rendering</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>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1608999</commentid>
    <comment_count>0</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2020-01-21 05:39:02 -0800</bug_when>
    <thetext>Stop using LayoutContext (which is more of a full tree layout thing) and use InlineFormattingContext directly. This has a side benefit of not needing to setup a root display box.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1609001</commentid>
    <comment_count>1</comment_count>
      <attachid>388292</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2020-01-21 05:53:03 -0800</bug_when>
    <thetext>Created attachment 388292
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1609016</commentid>
    <comment_count>2</comment_count>
      <attachid>388295</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2020-01-21 06:56:24 -0800</bug_when>
    <thetext>Created attachment 388295
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1609022</commentid>
    <comment_count>3</comment_count>
      <attachid>388295</attachid>
    <who name="alan">zalan</who>
    <bug_when>2020-01-21 07:19:37 -0800</bug_when>
    <thetext>Comment on attachment 388295
patch

v.nice!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1609038</commentid>
    <comment_count>4</comment_count>
      <attachid>388295</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-01-21 08:07:26 -0800</bug_when>
    <thetext>Comment on attachment 388295
patch

Clearing flags on attachment: 388295

Committed r254853: &lt;https://trac.webkit.org/changeset/254853&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1609039</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-01-21 08:07:28 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1609041</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-01-21 08:08:13 -0800</bug_when>
    <thetext>&lt;rdar://problem/58759449&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>388292</attachid>
            <date>2020-01-21 05:53:03 -0800</date>
            <delta_ts>2020-01-21 06:56:24 -0800</delta_ts>
            <desc>patch</desc>
            <filename>lfc-direct-ifc.patch</filename>
            <type>text/plain</type>
            <size>9904</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAzYzQ0Y2ZlM2RiMy4uODZhNzI1ZGU1MzMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNSBAQAorMjAyMC0wMS0yMSAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+
CisKKyAgICAgICAgW0xGQ11bSW50ZWdyYXRpb25dIFVzZSBJbmxpbmVGb3JtYXR0aW5nQ29udGV4
dCBkaXJlY3RseQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjA2NTI2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgU3RvcCB1c2luZyBMYXlvdXRDb250ZXh0ICh3aGljaCBpcyBtb3JlIG9mIGEgZnVsbCB0cmVl
IGxheW91dCB0aGluZykgYW5kIHVzZSBJbmxpbmVGb3JtYXR0aW5nQ29udGV4dCBkaXJlY3RseSBp
bnN0ZWFkLgorICAgICAgICBUaGlzIGhhcyBhIHNpZGUgYmVuZWZpdCBvZiBub3QgbmVlZGluZyB0
byBzZXR1cCBhIHJvb3QgZGlzcGxheSBib3guCisKKyAgICAgICAgKiBsYXlvdXQvTGF5b3V0Q29u
dGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OkxheW91dENvbnRleHQ6OmxheW91
dEZvcm1hdHRpbmdDb250ZXh0U3VidHJlZSk6CisgICAgICAgICogbGF5b3V0L2Jsb2NrZm9ybWF0
dGluZy9CbG9ja0Zvcm1hdHRpbmdDb250ZXh0Lmg6CisgICAgICAgICogbGF5b3V0L2lubGluZWZv
cm1hdHRpbmcvSW5saW5lRm9ybWF0dGluZ0NvbnRleHQuaDoKKyAgICAgICAgKiBsYXlvdXQvaW50
ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkxheW91dEludGVncmF0aW9uOjpMaW5lTGF5b3V0OjpMaW5lTGF5b3V0KToKKyAgICAgICAg
KFdlYkNvcmU6OkxheW91dEludGVncmF0aW9uOjpMaW5lTGF5b3V0OjpsYXlvdXQpOgorICAgICAg
ICAoV2ViQ29yZTo6TGF5b3V0SW50ZWdyYXRpb246OkxpbmVMYXlvdXQ6OmRpc3BsYXlJbmxpbmVD
b250ZW50IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dEludGVncmF0aW9uOjpMaW5l
TGF5b3V0OjpwcmVwYXJlUm9vdEdlb21ldHJ5Rm9yTGF5b3V0KTogRGVsZXRlZC4KKyAgICAgICAg
KiBsYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0Lmg6CisgICAg
ICAgICogbGF5b3V0L3RhYmxlZm9ybWF0dGluZy9UYWJsZUZvcm1hdHRpbmdDb250ZXh0Lmg6CisK
IDIwMjAtMDEtMjAgIFphbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBb
TEZDXVtJRkNdIEFkZCBzdXBwb3J0IGZvciB0aGUgcmFyZSBjYXNlIG9mIHJldmVydApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L0xheW91dENvbnRleHQuY3BwIGIvU291cmNlL1dl
YkNvcmUvbGF5b3V0L0xheW91dENvbnRleHQuY3BwCmluZGV4IDJlMzM1NTg3NmE0Li5lNTE2OGRj
ZDgwYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L0xheW91dENvbnRleHQuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9MYXlvdXRDb250ZXh0LmNwcApAQCAtMTAyLDgg
KzEwMiw3IEBAIHZvaWQgTGF5b3V0Q29udGV4dDo6bGF5b3V0Rm9ybWF0dGluZ0NvbnRleHRTdWJ0
cmVlKGNvbnN0IENvbnRhaW5lciYgZm9ybWF0dGluZ0NvCiAgICAgLy8gRklYTUU6IGxheW91dEZv
cm1hdHRpbmdDb250ZXh0U3VidHJlZSgpIGRvZXMgbm90IHBlcmZvcm0gbGF5b3V0IG9uIHRoZSBy
b290LCByYXRoZXIgaXQgbGF5cyBvdXQgdGhlIHJvb3QncyBjb250ZW50LgogICAgIC8vIEl0IGNv
bnN0cnVjdHMgYW4gRkMgZm9yIGRlc2NlbmRhbnQgYm94ZXMgYW5kIHJ1bnMgbGF5b3V0IG9uIHRo
ZW0uIFRoZSBmb3JtYXR0aW5nQ29udGV4dFJvb3QgaXMgbGFpZCBvdXQgaW4gdGhlIEZDIGluIHdo
aWNoIGl0IGxpdmVzIChwYXJlbnQgZm9ybWF0dGluZyBjb250ZXh0KS4KICAgICAvLyBJdCBhbHNv
IG1lYW5zIHRoYXQgdGhlIGZvcm1hdHRpbmdDb250ZXh0Um9vdCBoYXMgdG8gaGF2ZSBhIHZhbGlk
L2NsZWFuIGdlb21ldHJ5IGF0IHRoaXMgcG9pbnQuCi0gICAgLy8gQ3VycmVudGx5IHRoZSBpbnRl
Z3JhdGlvbiBjb2RlcGF0aCBkb2VzIG5vdCBndWFyYW50ZWUgaXQgYW5kIHRoYXQncyBmaW5lIGFz
IGxvbmcgYXMgd2UgbGF5b3V0IGluZmxvdyBjb250ZW50IG9ubHkuCi0gICAgaWYgKCFSdW50aW1l
RW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLmxheW91dEZvcm1hdHRpbmdDb250ZXh0
SW50ZWdyYXRpb25FbmFibGVkKCkpIHsKKyAgICB7CiAgICAgICAgIGF1dG8gaG9yaXpvbnRhbENv
bnN0cmFpbnRzID0gSG9yaXpvbnRhbENvbnN0cmFpbnRzIHsgZGlzcGxheUJveC5wYWRkaW5nQm94
TGVmdCgpLCBkaXNwbGF5Qm94LnBhZGRpbmdCb3hXaWR0aCgpIH07CiAgICAgICAgIGF1dG8gdmVy
dGljYWxDb25zdHJhaW50cyA9IFZlcnRpY2FsQ29uc3RyYWludHMgeyBkaXNwbGF5Qm94LnBhZGRp
bmdCb3hUb3AoKSwgZGlzcGxheUJveC5wYWRkaW5nQm94SGVpZ2h0KCkgfTsKICAgICAgICAgZm9y
bWF0dGluZ0NvbnRleHQtPmxheW91dE91dE9mRmxvd0NvbnRlbnQoaW52YWxpZGF0aW9uU3RhdGUs
IGhvcml6b250YWxDb25zdHJhaW50cywgdmVydGljYWxDb25zdHJhaW50cyk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvYmxvY2tmb3JtYXR0aW5nL0Jsb2NrRm9ybWF0dGluZ0Nv
bnRleHQuaCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9ibG9ja2Zvcm1hdHRpbmcvQmxvY2tGb3Jt
YXR0aW5nQ29udGV4dC5oCmluZGV4IDE0ZWU0OTA4ZTY2Li42MDExNmZiYzZkNyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Jsb2NrZm9ybWF0dGluZy9CbG9ja0Zvcm1hdHRpbmdD
b250ZXh0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Jsb2NrZm9ybWF0dGluZy9CbG9j
a0Zvcm1hdHRpbmdDb250ZXh0LmgKQEAgLTQzLDcgKzQzLDcgQEAgY2xhc3MgRmxvYXRpbmdDb250
ZXh0OwogCiAvLyBUaGlzIGNsYXNzIGltcGxlbWVudHMgdGhlIGxheW91dCBsb2dpYyBmb3IgYmxv
Y2sgZm9ybWF0dGluZyBjb250ZXh0cy4KIC8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9DU1MyMi92
aXN1cmVuLmh0bWwjYmxvY2stZm9ybWF0dGluZwotY2xhc3MgQmxvY2tGb3JtYXR0aW5nQ29udGV4
dCA6IHB1YmxpYyBGb3JtYXR0aW5nQ29udGV4dCB7CitjbGFzcyBCbG9ja0Zvcm1hdHRpbmdDb250
ZXh0IGZpbmFsIDogcHVibGljIEZvcm1hdHRpbmdDb250ZXh0IHsKICAgICBXVEZfTUFLRV9JU09f
QUxMT0NBVEVEKEJsb2NrRm9ybWF0dGluZ0NvbnRleHQpOwogcHVibGljOgogICAgIEJsb2NrRm9y
bWF0dGluZ0NvbnRleHQoY29uc3QgQ29udGFpbmVyJiBmb3JtYXR0aW5nQ29udGV4dFJvb3QsIEJs
b2NrRm9ybWF0dGluZ1N0YXRlJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQv
aW5saW5lZm9ybWF0dGluZy9JbmxpbmVGb3JtYXR0aW5nQ29udGV4dC5oIGIvU291cmNlL1dlYkNv
cmUvbGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5lRm9ybWF0dGluZ0NvbnRleHQuaAppbmRl
eCBkMjdlNDdmODk2My4uZDkwNDg5NDAyMmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xh
eW91dC9pbmxpbmVmb3JtYXR0aW5nL0lubGluZUZvcm1hdHRpbmdDb250ZXh0LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvbGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5lRm9ybWF0dGluZ0NvbnRl
eHQuaApAQCAtMzksNyArMzksNyBAQCBjbGFzcyBJbnZhbGlkYXRpb25TdGF0ZTsKIAogLy8gVGhp
cyBjbGFzcyBpbXBsZW1lbnRzIHRoZSBsYXlvdXQgbG9naWMgZm9yIGlubGluZSBmb3JtYXR0aW5n
IGNvbnRleHRzLgogLy8gaHR0cHM6Ly93d3cudzMub3JnL1RSL0NTUzIyL3Zpc3VyZW4uaHRtbCNp
bmxpbmUtZm9ybWF0dGluZwotY2xhc3MgSW5saW5lRm9ybWF0dGluZ0NvbnRleHQgOiBwdWJsaWMg
Rm9ybWF0dGluZ0NvbnRleHQgeworY2xhc3MgSW5saW5lRm9ybWF0dGluZ0NvbnRleHQgZmluYWwg
OiBwdWJsaWMgRm9ybWF0dGluZ0NvbnRleHQgewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQo
SW5saW5lRm9ybWF0dGluZ0NvbnRleHQpOwogcHVibGljOgogICAgIElubGluZUZvcm1hdHRpbmdD
b250ZXh0KGNvbnN0IENvbnRhaW5lciYgZm9ybWF0dGluZ0NvbnRleHRSb290LCBJbmxpbmVGb3Jt
YXR0aW5nU3RhdGUmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3Jh
dGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5
b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5jcHAKaW5kZXggMWEz
ODdkZDAxYWEuLjlhNDkyYTljNWEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQv
aW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNw
cApAQCAtMzAsMTIgKzMwLDEzIEBACiAKICNpbmNsdWRlICJEaXNwbGF5Qm94LmgiCiAjaW5jbHVk
ZSAiRXZlbnRSZWdpb24uaCIKKyNpbmNsdWRlICJGbG9hdGluZ1N0YXRlLmgiCiAjaW5jbHVkZSAi
SGl0VGVzdExvY2F0aW9uLmgiCiAjaW5jbHVkZSAiSGl0VGVzdFJlcXVlc3QuaCIKICNpbmNsdWRl
ICJIaXRUZXN0UmVzdWx0LmgiCisjaW5jbHVkZSAiSW5saW5lRm9ybWF0dGluZ0NvbnRleHQuaCIK
ICNpbmNsdWRlICJJbmxpbmVGb3JtYXR0aW5nU3RhdGUuaCIKICNpbmNsdWRlICJJbnZhbGlkYXRp
b25TdGF0ZS5oIgotI2luY2x1ZGUgIkxheW91dENvbnRleHQuaCIKICNpbmNsdWRlICJMYXlvdXRU
cmVlQnVpbGRlci5oIgogI2luY2x1ZGUgIlBhaW50SW5mby5oIgogI2luY2x1ZGUgIlJlbmRlckJs
b2NrRmxvdy5oIgpAQCAtNTMsNiArNTQsOCBAQCBuYW1lc3BhY2UgTGF5b3V0SW50ZWdyYXRpb24g
ewogTGluZUxheW91dDo6TGluZUxheW91dChjb25zdCBSZW5kZXJCbG9ja0Zsb3cmIGZsb3cpCiAg
ICAgOiBtX2Zsb3coZmxvdykKICAgICAsIG1fYm94VHJlZShmbG93KQorICAgICwgbV9sYXlvdXRT
dGF0ZShtX2Zsb3cuZG9jdW1lbnQoKSwgcm9vdExheW91dEJveCgpKQorICAgICwgbV9pbmxpbmVG
b3JtYXR0aW5nU3RhdGUoZG93bmNhc3Q8TGF5b3V0OjpJbmxpbmVGb3JtYXR0aW5nU3RhdGU+KG1f
bGF5b3V0U3RhdGUuY3JlYXRlRm9ybWF0dGluZ1N0YXRlRm9yRm9ybWF0dGluZ1Jvb3RJZk5lZWRl
ZChyb290TGF5b3V0Qm94KCkpKSkKIHsKIH0KIApAQCAtOTUsMzAgKzk4LDIxIEBAIHZvaWQgTGlu
ZUxheW91dDo6dXBkYXRlU3R5bGUoKQogCiB2b2lkIExpbmVMYXlvdXQ6OmxheW91dCgpCiB7Ci0g
ICAgaWYgKCFtX2xheW91dFN0YXRlKSB7Ci0gICAgICAgIG1fbGF5b3V0U3RhdGUuZW1wbGFjZSht
X2Zsb3cuZG9jdW1lbnQoKSwgbV9ib3hUcmVlLnJvb3RMYXlvdXRCb3goKSk7Ci0gICAgICAgIG1f
bGF5b3V0U3RhdGUtPnNldElzSW50ZWdyYXRlZFJvb3RCb3hGaXJzdENoaWxkKG1fZmxvdy5wYXJl
bnQoKS0+Zmlyc3RDaGlsZCgpID09ICZtX2Zsb3cpOwotICAgIH0KKyAgICBhdXRvIGlubGluZUZv
cm1hdHRpbmdDb250ZXh0ID0gTGF5b3V0OjpJbmxpbmVGb3JtYXR0aW5nQ29udGV4dCB7IHJvb3RM
YXlvdXRCb3goKSwgbV9pbmxpbmVGb3JtYXR0aW5nU3RhdGUgfTsKIAotICAgIHByZXBhcmVSb290
R2VvbWV0cnlGb3JMYXlvdXQoKTsKKyAgICBtX2xheW91dFN0YXRlLnNldFZpZXdwb3J0U2l6ZSht
X2Zsb3cuZnJhbWUoKS52aWV3KCktPnNpemUoKSk7CiAKLSAgICBhdXRvIGxheW91dENvbnRleHQg
PSBMYXlvdXQ6OkxheW91dENvbnRleHQgeyAqbV9sYXlvdXRTdGF0ZSB9OwogICAgIGF1dG8gaW52
YWxpZGF0aW9uU3RhdGUgPSBMYXlvdXQ6OkludmFsaWRhdGlvblN0YXRlIHsgfTsKKyAgICBhdXRv
IGhvcml6b250YWxDb25zdHJhaW50cyA9IExheW91dDo6SG9yaXpvbnRhbENvbnN0cmFpbnRzIHsg
bV9mbG93LmJvcmRlckFuZFBhZGRpbmdTdGFydCgpLCBtX2Zsb3cuY29udGVudFNpemUoKS53aWR0
aCgpIH07CisgICAgYXV0byB2ZXJ0aWNhbENvbnN0cmFpbnRzID0gTGF5b3V0OjpWZXJ0aWNhbENv
bnN0cmFpbnRzIHsgbV9mbG93LmJvcmRlckFuZFBhZGRpbmdCZWZvcmUoKSwgeyB9IH07CiAKLSAg
ICBsYXlvdXRDb250ZXh0LmxheW91dFdpdGhQcmVwYXJlZFJvb3RHZW9tZXRyeShpbnZhbGlkYXRp
b25TdGF0ZSk7Ci0KLSAgICBhdXRvJiBsaW5lQm94ZXMgPSBkb3duY2FzdDxMYXlvdXQ6OklubGlu
ZUZvcm1hdHRpbmdTdGF0ZT4obV9sYXlvdXRTdGF0ZS0+ZXN0YWJsaXNoZWRGb3JtYXR0aW5nU3Rh
dGUocm9vdExheW91dEJveCgpKSkuZGlzcGxheUlubGluZUNvbnRlbnQoKS0+bGluZUJveGVzOwot
ICAgIG1fY29udGVudExvZ2ljYWxIZWlnaHQgPSBsaW5lQm94ZXMubGFzdCgpLmxvZ2ljYWxCb3R0
b20oKSAtIGxpbmVCb3hlcy5maXJzdCgpLmxvZ2ljYWxUb3AoKTsKKyAgICBpbmxpbmVGb3JtYXR0
aW5nQ29udGV4dC5sYXlvdXRJbkZsb3dDb250ZW50KGludmFsaWRhdGlvblN0YXRlLCBob3Jpem9u
dGFsQ29uc3RyYWludHMsIHZlcnRpY2FsQ29uc3RyYWludHMpOwogfQogCi12b2lkIExpbmVMYXlv
dXQ6OnByZXBhcmVSb290R2VvbWV0cnlGb3JMYXlvdXQoKQorTGF5b3V0VW5pdCBMaW5lTGF5b3V0
Ojpjb250ZW50TG9naWNhbEhlaWdodCgpIGNvbnN0CiB7Ci0gICAgYXV0byYgZGlzcGxheUJveCA9
IG1fbGF5b3V0U3RhdGUtPmRpc3BsYXlCb3hGb3JSb290TGF5b3V0Qm94KCk7Ci0gICAgbV9sYXlv
dXRTdGF0ZS0+c2V0Vmlld3BvcnRTaXplKG1fZmxvdy5mcmFtZSgpLnZpZXcoKS0+c2l6ZSgpKTsK
LSAgICAvLyBEb24ndCBzZXQgbWFyZ2luZyBwcm9wZXJ0aWVzIG9yIGhlaWdodC4gVGhlc2Ugc2hv
dWxkIG5vdCBiZSBiZSBhY2Nlc3NlZCBieSBpbmxpbmUgbGF5b3V0LgotICAgIGRpc3BsYXlCb3gu
c2V0Qm9yZGVyKExheW91dDo6RWRnZXMgeyB7IG1fZmxvdy5ib3JkZXJTdGFydCgpLCBtX2Zsb3cu
Ym9yZGVyRW5kKCkgfSwgeyBtX2Zsb3cuYm9yZGVyQmVmb3JlKCksIG1fZmxvdy5ib3JkZXJBZnRl
cigpIH0gfSk7Ci0gICAgZGlzcGxheUJveC5zZXRQYWRkaW5nKExheW91dDo6RWRnZXMgeyB7IG1f
Zmxvdy5wYWRkaW5nU3RhcnQoKSwgbV9mbG93LnBhZGRpbmdFbmQoKSB9LCB7IG1fZmxvdy5wYWRk
aW5nQmVmb3JlKCksIG1fZmxvdy5wYWRkaW5nQWZ0ZXIoKSB9IH0pOwotICAgIGRpc3BsYXlCb3gu
c2V0Q29udGVudEJveFdpZHRoKG1fZmxvdy5jb250ZW50U2l6ZSgpLndpZHRoKCkpOworICAgIGF1
dG8mIGxpbmVCb3hlcyA9IGRpc3BsYXlJbmxpbmVDb250ZW50KCktPmxpbmVCb3hlczsKKyAgICBy
ZXR1cm4gTGF5b3V0VW5pdCB7IGxpbmVCb3hlcy5sYXN0KCkubG9naWNhbEJvdHRvbSgpIC0gbGlu
ZUJveGVzLmZpcnN0KCkubG9naWNhbFRvcCgpIH07CiB9CiAKIHNpemVfdCBMaW5lTGF5b3V0Ojps
aW5lQ291bnQoKSBjb25zdApAQCAtMTY4LDcgKzE2Miw3IEBAIHZvaWQgTGluZUxheW91dDo6Y29s
bGVjdE92ZXJmbG93KFJlbmRlckJsb2NrRmxvdyYgZmxvdykKIAogY29uc3QgRGlzcGxheTo6SW5s
aW5lQ29udGVudCogTGluZUxheW91dDo6ZGlzcGxheUlubGluZUNvbnRlbnQoKSBjb25zdAogewot
ICAgIHJldHVybiBkb3duY2FzdDxMYXlvdXQ6OklubGluZUZvcm1hdHRpbmdTdGF0ZT4obV9sYXlv
dXRTdGF0ZS0+ZXN0YWJsaXNoZWRGb3JtYXR0aW5nU3RhdGUocm9vdExheW91dEJveCgpKSkuZGlz
cGxheUlubGluZUNvbnRlbnQoKTsKKyAgICByZXR1cm4gbV9pbmxpbmVGb3JtYXR0aW5nU3RhdGUu
ZGlzcGxheUlubGluZUNvbnRlbnQoKTsKIH0KIAogTGluZUxheW91dFRyYXZlcnNhbDo6VGV4dEJv
eEl0ZXJhdG9yIExpbmVMYXlvdXQ6OnRleHRCb3hlc0Zvcihjb25zdCBSZW5kZXJUZXh0JiByZW5k
ZXJUZXh0KSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0
aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5oIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0
L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5oCmluZGV4IGMzN2RjZDRh
YTg0Li40NmU1MDVlOTY0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVn
cmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuaApAQCAtNjQs
NyArNjQsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCB1cGRhdGVTdHlsZSgpOwogICAgIHZvaWQgbGF5
b3V0KCk7CiAKLSAgICBMYXlvdXRVbml0IGNvbnRlbnRMb2dpY2FsSGVpZ2h0KCkgY29uc3QgeyBy
ZXR1cm4gbV9jb250ZW50TG9naWNhbEhlaWdodDsgfQorICAgIExheW91dFVuaXQgY29udGVudExv
Z2ljYWxIZWlnaHQoKSBjb25zdDsKICAgICBzaXplX3QgbGluZUNvdW50KCkgY29uc3Q7CiAKICAg
ICBMYXlvdXRVbml0IGZpcnN0TGluZUJhc2VsaW5lKCkgY29uc3Q7CkBAIC04MywxMyArODMsMTIg
QEAgcHVibGljOgogcHJpdmF0ZToKICAgICBjb25zdCBMYXlvdXQ6OkNvbnRhaW5lciYgcm9vdExh
eW91dEJveCgpIGNvbnN0OwogICAgIExheW91dDo6Q29udGFpbmVyJiByb290TGF5b3V0Qm94KCk7
Ci0gICAgdm9pZCBwcmVwYXJlUm9vdEdlb21ldHJ5Rm9yTGF5b3V0KCk7CiAgICAgU2hhZG93RGF0
YSogZGVidWdUZXh0U2hhZG93KCk7CiAKICAgICBjb25zdCBSZW5kZXJCbG9ja0Zsb3cmIG1fZmxv
dzsKICAgICBCb3hUcmVlIG1fYm94VHJlZTsKLSAgICBPcHRpb25hbDxMYXlvdXQ6OkxheW91dFN0
YXRlPiBtX2xheW91dFN0YXRlOwotICAgIExheW91dFVuaXQgbV9jb250ZW50TG9naWNhbEhlaWdo
dDsKKyAgICBMYXlvdXQ6OkxheW91dFN0YXRlIG1fbGF5b3V0U3RhdGU7CisgICAgTGF5b3V0OjpJ
bmxpbmVGb3JtYXR0aW5nU3RhdGUmIG1faW5saW5lRm9ybWF0dGluZ1N0YXRlOwogfTsKIAogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L3RhYmxlZm9ybWF0dGluZy9UYWJsZUZv
cm1hdHRpbmdDb250ZXh0LmggYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvdGFibGVmb3JtYXR0aW5n
L1RhYmxlRm9ybWF0dGluZ0NvbnRleHQuaAppbmRleCA5ZmJjMDZjNmQzNi4uMDA2NTZhMjliNzYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC90YWJsZWZvcm1hdHRpbmcvVGFibGVG
b3JtYXR0aW5nQ29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC90YWJsZWZvcm1h
dHRpbmcvVGFibGVGb3JtYXR0aW5nQ29udGV4dC5oCkBAIC0zOCw3ICszOCw3IEBAIGNsYXNzIElu
dmFsaWRhdGlvblN0YXRlOwogY2xhc3MgVGFibGVGb3JtYXR0aW5nU3RhdGU7CiAvLyBUaGlzIGNs
YXNzIGltcGxlbWVudHMgdGhlIGxheW91dCBsb2dpYyBmb3IgdGFibGUgZm9ybWF0dGluZyBjb250
ZXh0cy4KIC8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9DU1MyMi90YWJsZXMuaHRtbAotY2xhc3Mg
VGFibGVGb3JtYXR0aW5nQ29udGV4dCA6IHB1YmxpYyBGb3JtYXR0aW5nQ29udGV4dCB7CitjbGFz
cyBUYWJsZUZvcm1hdHRpbmdDb250ZXh0IGZpbmFsIDogcHVibGljIEZvcm1hdHRpbmdDb250ZXh0
IHsKICAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKFRhYmxlRm9ybWF0dGluZ0NvbnRleHQpOwog
cHVibGljOgogICAgIFRhYmxlRm9ybWF0dGluZ0NvbnRleHQoY29uc3QgQ29udGFpbmVyJiBmb3Jt
YXR0aW5nQ29udGV4dFJvb3QsIFRhYmxlRm9ybWF0dGluZ1N0YXRlJik7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>388295</attachid>
            <date>2020-01-21 06:56:24 -0800</date>
            <delta_ts>2020-01-21 08:07:26 -0800</delta_ts>
            <desc>patch</desc>
            <filename>lfc-direct-ifc-2.patch</filename>
            <type>text/plain</type>
            <size>10038</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAzYzQ0Y2ZlM2RiMy4uODZhNzI1ZGU1MzMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNSBAQAorMjAyMC0wMS0yMSAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+
CisKKyAgICAgICAgW0xGQ11bSW50ZWdyYXRpb25dIFVzZSBJbmxpbmVGb3JtYXR0aW5nQ29udGV4
dCBkaXJlY3RseQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjA2NTI2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgU3RvcCB1c2luZyBMYXlvdXRDb250ZXh0ICh3aGljaCBpcyBtb3JlIG9mIGEgZnVsbCB0cmVl
IGxheW91dCB0aGluZykgYW5kIHVzZSBJbmxpbmVGb3JtYXR0aW5nQ29udGV4dCBkaXJlY3RseSBp
bnN0ZWFkLgorICAgICAgICBUaGlzIGhhcyBhIHNpZGUgYmVuZWZpdCBvZiBub3QgbmVlZGluZyB0
byBzZXR1cCBhIHJvb3QgZGlzcGxheSBib3guCisKKyAgICAgICAgKiBsYXlvdXQvTGF5b3V0Q29u
dGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OkxheW91dENvbnRleHQ6OmxheW91
dEZvcm1hdHRpbmdDb250ZXh0U3VidHJlZSk6CisgICAgICAgICogbGF5b3V0L2Jsb2NrZm9ybWF0
dGluZy9CbG9ja0Zvcm1hdHRpbmdDb250ZXh0Lmg6CisgICAgICAgICogbGF5b3V0L2lubGluZWZv
cm1hdHRpbmcvSW5saW5lRm9ybWF0dGluZ0NvbnRleHQuaDoKKyAgICAgICAgKiBsYXlvdXQvaW50
ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkxheW91dEludGVncmF0aW9uOjpMaW5lTGF5b3V0OjpMaW5lTGF5b3V0KToKKyAgICAgICAg
KFdlYkNvcmU6OkxheW91dEludGVncmF0aW9uOjpMaW5lTGF5b3V0OjpsYXlvdXQpOgorICAgICAg
ICAoV2ViQ29yZTo6TGF5b3V0SW50ZWdyYXRpb246OkxpbmVMYXlvdXQ6OmRpc3BsYXlJbmxpbmVD
b250ZW50IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dEludGVncmF0aW9uOjpMaW5l
TGF5b3V0OjpwcmVwYXJlUm9vdEdlb21ldHJ5Rm9yTGF5b3V0KTogRGVsZXRlZC4KKyAgICAgICAg
KiBsYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0Lmg6CisgICAg
ICAgICogbGF5b3V0L3RhYmxlZm9ybWF0dGluZy9UYWJsZUZvcm1hdHRpbmdDb250ZXh0Lmg6CisK
IDIwMjAtMDEtMjAgIFphbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBb
TEZDXVtJRkNdIEFkZCBzdXBwb3J0IGZvciB0aGUgcmFyZSBjYXNlIG9mIHJldmVydApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L0xheW91dENvbnRleHQuY3BwIGIvU291cmNlL1dl
YkNvcmUvbGF5b3V0L0xheW91dENvbnRleHQuY3BwCmluZGV4IDJlMzM1NTg3NmE0Li5lNTE2OGRj
ZDgwYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L0xheW91dENvbnRleHQuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9MYXlvdXRDb250ZXh0LmNwcApAQCAtMTAyLDgg
KzEwMiw3IEBAIHZvaWQgTGF5b3V0Q29udGV4dDo6bGF5b3V0Rm9ybWF0dGluZ0NvbnRleHRTdWJ0
cmVlKGNvbnN0IENvbnRhaW5lciYgZm9ybWF0dGluZ0NvCiAgICAgLy8gRklYTUU6IGxheW91dEZv
cm1hdHRpbmdDb250ZXh0U3VidHJlZSgpIGRvZXMgbm90IHBlcmZvcm0gbGF5b3V0IG9uIHRoZSBy
b290LCByYXRoZXIgaXQgbGF5cyBvdXQgdGhlIHJvb3QncyBjb250ZW50LgogICAgIC8vIEl0IGNv
bnN0cnVjdHMgYW4gRkMgZm9yIGRlc2NlbmRhbnQgYm94ZXMgYW5kIHJ1bnMgbGF5b3V0IG9uIHRo
ZW0uIFRoZSBmb3JtYXR0aW5nQ29udGV4dFJvb3QgaXMgbGFpZCBvdXQgaW4gdGhlIEZDIGluIHdo
aWNoIGl0IGxpdmVzIChwYXJlbnQgZm9ybWF0dGluZyBjb250ZXh0KS4KICAgICAvLyBJdCBhbHNv
IG1lYW5zIHRoYXQgdGhlIGZvcm1hdHRpbmdDb250ZXh0Um9vdCBoYXMgdG8gaGF2ZSBhIHZhbGlk
L2NsZWFuIGdlb21ldHJ5IGF0IHRoaXMgcG9pbnQuCi0gICAgLy8gQ3VycmVudGx5IHRoZSBpbnRl
Z3JhdGlvbiBjb2RlcGF0aCBkb2VzIG5vdCBndWFyYW50ZWUgaXQgYW5kIHRoYXQncyBmaW5lIGFz
IGxvbmcgYXMgd2UgbGF5b3V0IGluZmxvdyBjb250ZW50IG9ubHkuCi0gICAgaWYgKCFSdW50aW1l
RW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLmxheW91dEZvcm1hdHRpbmdDb250ZXh0
SW50ZWdyYXRpb25FbmFibGVkKCkpIHsKKyAgICB7CiAgICAgICAgIGF1dG8gaG9yaXpvbnRhbENv
bnN0cmFpbnRzID0gSG9yaXpvbnRhbENvbnN0cmFpbnRzIHsgZGlzcGxheUJveC5wYWRkaW5nQm94
TGVmdCgpLCBkaXNwbGF5Qm94LnBhZGRpbmdCb3hXaWR0aCgpIH07CiAgICAgICAgIGF1dG8gdmVy
dGljYWxDb25zdHJhaW50cyA9IFZlcnRpY2FsQ29uc3RyYWludHMgeyBkaXNwbGF5Qm94LnBhZGRp
bmdCb3hUb3AoKSwgZGlzcGxheUJveC5wYWRkaW5nQm94SGVpZ2h0KCkgfTsKICAgICAgICAgZm9y
bWF0dGluZ0NvbnRleHQtPmxheW91dE91dE9mRmxvd0NvbnRlbnQoaW52YWxpZGF0aW9uU3RhdGUs
IGhvcml6b250YWxDb25zdHJhaW50cywgdmVydGljYWxDb25zdHJhaW50cyk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvYmxvY2tmb3JtYXR0aW5nL0Jsb2NrRm9ybWF0dGluZ0Nv
bnRleHQuaCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9ibG9ja2Zvcm1hdHRpbmcvQmxvY2tGb3Jt
YXR0aW5nQ29udGV4dC5oCmluZGV4IDE0ZWU0OTA4ZTY2Li42MDExNmZiYzZkNyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Jsb2NrZm9ybWF0dGluZy9CbG9ja0Zvcm1hdHRpbmdD
b250ZXh0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Jsb2NrZm9ybWF0dGluZy9CbG9j
a0Zvcm1hdHRpbmdDb250ZXh0LmgKQEAgLTQzLDcgKzQzLDcgQEAgY2xhc3MgRmxvYXRpbmdDb250
ZXh0OwogCiAvLyBUaGlzIGNsYXNzIGltcGxlbWVudHMgdGhlIGxheW91dCBsb2dpYyBmb3IgYmxv
Y2sgZm9ybWF0dGluZyBjb250ZXh0cy4KIC8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9DU1MyMi92
aXN1cmVuLmh0bWwjYmxvY2stZm9ybWF0dGluZwotY2xhc3MgQmxvY2tGb3JtYXR0aW5nQ29udGV4
dCA6IHB1YmxpYyBGb3JtYXR0aW5nQ29udGV4dCB7CitjbGFzcyBCbG9ja0Zvcm1hdHRpbmdDb250
ZXh0IGZpbmFsIDogcHVibGljIEZvcm1hdHRpbmdDb250ZXh0IHsKICAgICBXVEZfTUFLRV9JU09f
QUxMT0NBVEVEKEJsb2NrRm9ybWF0dGluZ0NvbnRleHQpOwogcHVibGljOgogICAgIEJsb2NrRm9y
bWF0dGluZ0NvbnRleHQoY29uc3QgQ29udGFpbmVyJiBmb3JtYXR0aW5nQ29udGV4dFJvb3QsIEJs
b2NrRm9ybWF0dGluZ1N0YXRlJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQv
aW5saW5lZm9ybWF0dGluZy9JbmxpbmVGb3JtYXR0aW5nQ29udGV4dC5oIGIvU291cmNlL1dlYkNv
cmUvbGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5lRm9ybWF0dGluZ0NvbnRleHQuaAppbmRl
eCBkMjdlNDdmODk2My4uZDkwNDg5NDAyMmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xh
eW91dC9pbmxpbmVmb3JtYXR0aW5nL0lubGluZUZvcm1hdHRpbmdDb250ZXh0LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvbGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5lRm9ybWF0dGluZ0NvbnRl
eHQuaApAQCAtMzksNyArMzksNyBAQCBjbGFzcyBJbnZhbGlkYXRpb25TdGF0ZTsKIAogLy8gVGhp
cyBjbGFzcyBpbXBsZW1lbnRzIHRoZSBsYXlvdXQgbG9naWMgZm9yIGlubGluZSBmb3JtYXR0aW5n
IGNvbnRleHRzLgogLy8gaHR0cHM6Ly93d3cudzMub3JnL1RSL0NTUzIyL3Zpc3VyZW4uaHRtbCNp
bmxpbmUtZm9ybWF0dGluZwotY2xhc3MgSW5saW5lRm9ybWF0dGluZ0NvbnRleHQgOiBwdWJsaWMg
Rm9ybWF0dGluZ0NvbnRleHQgeworY2xhc3MgSW5saW5lRm9ybWF0dGluZ0NvbnRleHQgZmluYWwg
OiBwdWJsaWMgRm9ybWF0dGluZ0NvbnRleHQgewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQo
SW5saW5lRm9ybWF0dGluZ0NvbnRleHQpOwogcHVibGljOgogICAgIElubGluZUZvcm1hdHRpbmdD
b250ZXh0KGNvbnN0IENvbnRhaW5lciYgZm9ybWF0dGluZ0NvbnRleHRSb290LCBJbmxpbmVGb3Jt
YXR0aW5nU3RhdGUmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3Jh
dGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5
b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5jcHAKaW5kZXggMWEz
ODdkZDAxYWEuLjE5OTRhNDhhYTU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQv
aW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNw
cApAQCAtMzAsMTIgKzMwLDEzIEBACiAKICNpbmNsdWRlICJEaXNwbGF5Qm94LmgiCiAjaW5jbHVk
ZSAiRXZlbnRSZWdpb24uaCIKKyNpbmNsdWRlICJGbG9hdGluZ1N0YXRlLmgiCiAjaW5jbHVkZSAi
SGl0VGVzdExvY2F0aW9uLmgiCiAjaW5jbHVkZSAiSGl0VGVzdFJlcXVlc3QuaCIKICNpbmNsdWRl
ICJIaXRUZXN0UmVzdWx0LmgiCisjaW5jbHVkZSAiSW5saW5lRm9ybWF0dGluZ0NvbnRleHQuaCIK
ICNpbmNsdWRlICJJbmxpbmVGb3JtYXR0aW5nU3RhdGUuaCIKICNpbmNsdWRlICJJbnZhbGlkYXRp
b25TdGF0ZS5oIgotI2luY2x1ZGUgIkxheW91dENvbnRleHQuaCIKICNpbmNsdWRlICJMYXlvdXRU
cmVlQnVpbGRlci5oIgogI2luY2x1ZGUgIlBhaW50SW5mby5oIgogI2luY2x1ZGUgIlJlbmRlckJs
b2NrRmxvdy5oIgpAQCAtNTMsNyArNTQsMTAgQEAgbmFtZXNwYWNlIExheW91dEludGVncmF0aW9u
IHsKIExpbmVMYXlvdXQ6OkxpbmVMYXlvdXQoY29uc3QgUmVuZGVyQmxvY2tGbG93JiBmbG93KQog
ICAgIDogbV9mbG93KGZsb3cpCiAgICAgLCBtX2JveFRyZWUoZmxvdykKKyAgICAsIG1fbGF5b3V0
U3RhdGUobV9mbG93LmRvY3VtZW50KCksIHJvb3RMYXlvdXRCb3goKSkKKyAgICAsIG1faW5saW5l
Rm9ybWF0dGluZ1N0YXRlKGRvd25jYXN0PExheW91dDo6SW5saW5lRm9ybWF0dGluZ1N0YXRlPiht
X2xheW91dFN0YXRlLmNyZWF0ZUZvcm1hdHRpbmdTdGF0ZUZvckZvcm1hdHRpbmdSb290SWZOZWVk
ZWQocm9vdExheW91dEJveCgpKSkpCiB7CisgICAgbV9sYXlvdXRTdGF0ZS5zZXRJc0ludGVncmF0
ZWRSb290Qm94Rmlyc3RDaGlsZChtX2Zsb3cucGFyZW50KCktPmZpcnN0Q2hpbGQoKSA9PSAmbV9m
bG93KTsKIH0KIAogTGluZUxheW91dDo6fkxpbmVMYXlvdXQoKSA9IGRlZmF1bHQ7CkBAIC05NSwz
MCArOTksMjEgQEAgdm9pZCBMaW5lTGF5b3V0Ojp1cGRhdGVTdHlsZSgpCiAKIHZvaWQgTGluZUxh
eW91dDo6bGF5b3V0KCkKIHsKLSAgICBpZiAoIW1fbGF5b3V0U3RhdGUpIHsKLSAgICAgICAgbV9s
YXlvdXRTdGF0ZS5lbXBsYWNlKG1fZmxvdy5kb2N1bWVudCgpLCBtX2JveFRyZWUucm9vdExheW91
dEJveCgpKTsKLSAgICAgICAgbV9sYXlvdXRTdGF0ZS0+c2V0SXNJbnRlZ3JhdGVkUm9vdEJveEZp
cnN0Q2hpbGQobV9mbG93LnBhcmVudCgpLT5maXJzdENoaWxkKCkgPT0gJm1fZmxvdyk7Ci0gICAg
fQorICAgIGF1dG8gaW5saW5lRm9ybWF0dGluZ0NvbnRleHQgPSBMYXlvdXQ6OklubGluZUZvcm1h
dHRpbmdDb250ZXh0IHsgcm9vdExheW91dEJveCgpLCBtX2lubGluZUZvcm1hdHRpbmdTdGF0ZSB9
OwogCi0gICAgcHJlcGFyZVJvb3RHZW9tZXRyeUZvckxheW91dCgpOworICAgIG1fbGF5b3V0U3Rh
dGUuc2V0Vmlld3BvcnRTaXplKG1fZmxvdy5mcmFtZSgpLnZpZXcoKS0+c2l6ZSgpKTsKIAotICAg
IGF1dG8gbGF5b3V0Q29udGV4dCA9IExheW91dDo6TGF5b3V0Q29udGV4dCB7ICptX2xheW91dFN0
YXRlIH07CiAgICAgYXV0byBpbnZhbGlkYXRpb25TdGF0ZSA9IExheW91dDo6SW52YWxpZGF0aW9u
U3RhdGUgeyB9OworICAgIGF1dG8gaG9yaXpvbnRhbENvbnN0cmFpbnRzID0gTGF5b3V0OjpIb3Jp
em9udGFsQ29uc3RyYWludHMgeyBtX2Zsb3cuYm9yZGVyQW5kUGFkZGluZ1N0YXJ0KCksIG1fZmxv
dy5jb250ZW50U2l6ZSgpLndpZHRoKCkgfTsKKyAgICBhdXRvIHZlcnRpY2FsQ29uc3RyYWludHMg
PSBMYXlvdXQ6OlZlcnRpY2FsQ29uc3RyYWludHMgeyBtX2Zsb3cuYm9yZGVyQW5kUGFkZGluZ0Jl
Zm9yZSgpLCB7IH0gfTsKIAotICAgIGxheW91dENvbnRleHQubGF5b3V0V2l0aFByZXBhcmVkUm9v
dEdlb21ldHJ5KGludmFsaWRhdGlvblN0YXRlKTsKLQotICAgIGF1dG8mIGxpbmVCb3hlcyA9IGRv
d25jYXN0PExheW91dDo6SW5saW5lRm9ybWF0dGluZ1N0YXRlPihtX2xheW91dFN0YXRlLT5lc3Rh
Ymxpc2hlZEZvcm1hdHRpbmdTdGF0ZShyb290TGF5b3V0Qm94KCkpKS5kaXNwbGF5SW5saW5lQ29u
dGVudCgpLT5saW5lQm94ZXM7Ci0gICAgbV9jb250ZW50TG9naWNhbEhlaWdodCA9IGxpbmVCb3hl
cy5sYXN0KCkubG9naWNhbEJvdHRvbSgpIC0gbGluZUJveGVzLmZpcnN0KCkubG9naWNhbFRvcCgp
OworICAgIGlubGluZUZvcm1hdHRpbmdDb250ZXh0LmxheW91dEluRmxvd0NvbnRlbnQoaW52YWxp
ZGF0aW9uU3RhdGUsIGhvcml6b250YWxDb25zdHJhaW50cywgdmVydGljYWxDb25zdHJhaW50cyk7
CiB9CiAKLXZvaWQgTGluZUxheW91dDo6cHJlcGFyZVJvb3RHZW9tZXRyeUZvckxheW91dCgpCitM
YXlvdXRVbml0IExpbmVMYXlvdXQ6OmNvbnRlbnRMb2dpY2FsSGVpZ2h0KCkgY29uc3QKIHsKLSAg
ICBhdXRvJiBkaXNwbGF5Qm94ID0gbV9sYXlvdXRTdGF0ZS0+ZGlzcGxheUJveEZvclJvb3RMYXlv
dXRCb3goKTsKLSAgICBtX2xheW91dFN0YXRlLT5zZXRWaWV3cG9ydFNpemUobV9mbG93LmZyYW1l
KCkudmlldygpLT5zaXplKCkpOwotICAgIC8vIERvbid0IHNldCBtYXJnaW5nIHByb3BlcnRpZXMg
b3IgaGVpZ2h0LiBUaGVzZSBzaG91bGQgbm90IGJlIGJlIGFjY2Vzc2VkIGJ5IGlubGluZSBsYXlv
dXQuCi0gICAgZGlzcGxheUJveC5zZXRCb3JkZXIoTGF5b3V0OjpFZGdlcyB7IHsgbV9mbG93LmJv
cmRlclN0YXJ0KCksIG1fZmxvdy5ib3JkZXJFbmQoKSB9LCB7IG1fZmxvdy5ib3JkZXJCZWZvcmUo
KSwgbV9mbG93LmJvcmRlckFmdGVyKCkgfSB9KTsKLSAgICBkaXNwbGF5Qm94LnNldFBhZGRpbmco
TGF5b3V0OjpFZGdlcyB7IHsgbV9mbG93LnBhZGRpbmdTdGFydCgpLCBtX2Zsb3cucGFkZGluZ0Vu
ZCgpIH0sIHsgbV9mbG93LnBhZGRpbmdCZWZvcmUoKSwgbV9mbG93LnBhZGRpbmdBZnRlcigpIH0g
fSk7Ci0gICAgZGlzcGxheUJveC5zZXRDb250ZW50Qm94V2lkdGgobV9mbG93LmNvbnRlbnRTaXpl
KCkud2lkdGgoKSk7CisgICAgYXV0byYgbGluZUJveGVzID0gZGlzcGxheUlubGluZUNvbnRlbnQo
KS0+bGluZUJveGVzOworICAgIHJldHVybiBMYXlvdXRVbml0IHsgbGluZUJveGVzLmxhc3QoKS5s
b2dpY2FsQm90dG9tKCkgLSBsaW5lQm94ZXMuZmlyc3QoKS5sb2dpY2FsVG9wKCkgfTsKIH0KIAog
c2l6ZV90IExpbmVMYXlvdXQ6OmxpbmVDb3VudCgpIGNvbnN0CkBAIC0xNjgsNyArMTYzLDcgQEAg
dm9pZCBMaW5lTGF5b3V0Ojpjb2xsZWN0T3ZlcmZsb3coUmVuZGVyQmxvY2tGbG93JiBmbG93KQog
CiBjb25zdCBEaXNwbGF5OjpJbmxpbmVDb250ZW50KiBMaW5lTGF5b3V0OjpkaXNwbGF5SW5saW5l
Q29udGVudCgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIGRvd25jYXN0PExheW91dDo6SW5saW5lRm9y
bWF0dGluZ1N0YXRlPihtX2xheW91dFN0YXRlLT5lc3RhYmxpc2hlZEZvcm1hdHRpbmdTdGF0ZShy
b290TGF5b3V0Qm94KCkpKS5kaXNwbGF5SW5saW5lQ29udGVudCgpOworICAgIHJldHVybiBtX2lu
bGluZUZvcm1hdHRpbmdTdGF0ZS5kaXNwbGF5SW5saW5lQ29udGVudCgpOwogfQogCiBMaW5lTGF5
b3V0VHJhdmVyc2FsOjpUZXh0Qm94SXRlcmF0b3IgTGluZUxheW91dDo6dGV4dEJveGVzRm9yKGNv
bnN0IFJlbmRlclRleHQmIHJlbmRlclRleHQpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmggYi9T
b3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5
b3V0LmgKaW5kZXggYzM3ZGNkNGFhODQuLjQ2ZTUwNWU5NjQ1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmgK
KysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9u
TGluZUxheW91dC5oCkBAIC02NCw3ICs2NCw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHVwZGF0ZVN0
eWxlKCk7CiAgICAgdm9pZCBsYXlvdXQoKTsKIAotICAgIExheW91dFVuaXQgY29udGVudExvZ2lj
YWxIZWlnaHQoKSBjb25zdCB7IHJldHVybiBtX2NvbnRlbnRMb2dpY2FsSGVpZ2h0OyB9CisgICAg
TGF5b3V0VW5pdCBjb250ZW50TG9naWNhbEhlaWdodCgpIGNvbnN0OwogICAgIHNpemVfdCBsaW5l
Q291bnQoKSBjb25zdDsKIAogICAgIExheW91dFVuaXQgZmlyc3RMaW5lQmFzZWxpbmUoKSBjb25z
dDsKQEAgLTgzLDEzICs4MywxMiBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAgIGNvbnN0IExheW91
dDo6Q29udGFpbmVyJiByb290TGF5b3V0Qm94KCkgY29uc3Q7CiAgICAgTGF5b3V0OjpDb250YWlu
ZXImIHJvb3RMYXlvdXRCb3goKTsKLSAgICB2b2lkIHByZXBhcmVSb290R2VvbWV0cnlGb3JMYXlv
dXQoKTsKICAgICBTaGFkb3dEYXRhKiBkZWJ1Z1RleHRTaGFkb3coKTsKIAogICAgIGNvbnN0IFJl
bmRlckJsb2NrRmxvdyYgbV9mbG93OwogICAgIEJveFRyZWUgbV9ib3hUcmVlOwotICAgIE9wdGlv
bmFsPExheW91dDo6TGF5b3V0U3RhdGU+IG1fbGF5b3V0U3RhdGU7Ci0gICAgTGF5b3V0VW5pdCBt
X2NvbnRlbnRMb2dpY2FsSGVpZ2h0OworICAgIExheW91dDo6TGF5b3V0U3RhdGUgbV9sYXlvdXRT
dGF0ZTsKKyAgICBMYXlvdXQ6OklubGluZUZvcm1hdHRpbmdTdGF0ZSYgbV9pbmxpbmVGb3JtYXR0
aW5nU3RhdGU7CiB9OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvdGFi
bGVmb3JtYXR0aW5nL1RhYmxlRm9ybWF0dGluZ0NvbnRleHQuaCBiL1NvdXJjZS9XZWJDb3JlL2xh
eW91dC90YWJsZWZvcm1hdHRpbmcvVGFibGVGb3JtYXR0aW5nQ29udGV4dC5oCmluZGV4IDlmYmMw
NmM2ZDM2Li4wMDY1NmEyOWI3NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L3Rh
YmxlZm9ybWF0dGluZy9UYWJsZUZvcm1hdHRpbmdDb250ZXh0LmgKKysrIGIvU291cmNlL1dlYkNv
cmUvbGF5b3V0L3RhYmxlZm9ybWF0dGluZy9UYWJsZUZvcm1hdHRpbmdDb250ZXh0LmgKQEAgLTM4
LDcgKzM4LDcgQEAgY2xhc3MgSW52YWxpZGF0aW9uU3RhdGU7CiBjbGFzcyBUYWJsZUZvcm1hdHRp
bmdTdGF0ZTsKIC8vIFRoaXMgY2xhc3MgaW1wbGVtZW50cyB0aGUgbGF5b3V0IGxvZ2ljIGZvciB0
YWJsZSBmb3JtYXR0aW5nIGNvbnRleHRzLgogLy8gaHR0cHM6Ly93d3cudzMub3JnL1RSL0NTUzIy
L3RhYmxlcy5odG1sCi1jbGFzcyBUYWJsZUZvcm1hdHRpbmdDb250ZXh0IDogcHVibGljIEZvcm1h
dHRpbmdDb250ZXh0IHsKK2NsYXNzIFRhYmxlRm9ybWF0dGluZ0NvbnRleHQgZmluYWwgOiBwdWJs
aWMgRm9ybWF0dGluZ0NvbnRleHQgewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQoVGFibGVG
b3JtYXR0aW5nQ29udGV4dCk7CiBwdWJsaWM6CiAgICAgVGFibGVGb3JtYXR0aW5nQ29udGV4dChj
b25zdCBDb250YWluZXImIGZvcm1hdHRpbmdDb250ZXh0Um9vdCwgVGFibGVGb3JtYXR0aW5nU3Rh
dGUmKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>