<?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>188912</bug_id>
          
          <creation_ts>2018-08-23 19:09:28 -0700</creation_ts>
          <short_desc>[LFC][Floating] Simplify FloatingState::FloatItem class</short_desc>
          <delta_ts>2018-08-26 21:04:17 -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>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="alan">zalan</reporter>
          <assigned_to name="alan">zalan</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>koivisto</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>1453369</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2018-08-23 19:09:28 -0700</bug_when>
    <thetext>now that we&apos;ve got a dedicated class for incoming floats.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453373</commentid>
    <comment_count>1</comment_count>
      <attachid>347984</attachid>
    <who name="alan">zalan</who>
    <bug_when>2018-08-23 19:19:18 -0700</bug_when>
    <thetext>Created attachment 347984
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453483</commentid>
    <comment_count>2</comment_count>
      <attachid>347984</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2018-08-24 10:37:07 -0700</bug_when>
    <thetext>Comment on attachment 347984
Patch

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

&gt; Source/WebCore/layout/floats/FloatingContext.cpp:68
&gt; +    const FloatingState::FloatItem* left() const;
&gt; +    const FloatingState::FloatItem* right() const;

&quot;FloatItem&quot; is a weird name. &quot;Item&quot; doesn&apos;t tell me what type it is, and we don&apos;t use &quot;item&quot; in other rendering code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453499</commentid>
    <comment_count>3</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2018-08-24 11:21:19 -0700</bug_when>
    <thetext>(In reply to Simon Fraser (smfr) from comment #2)
&gt; Comment on attachment 347984 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=347984&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/layout/floats/FloatingContext.cpp:68
&gt; &gt; +    const FloatingState::FloatItem* left() const;
&gt; &gt; +    const FloatingState::FloatItem* right() const;
&gt; 
&gt; &quot;FloatItem&quot; is a weird name. &quot;Item&quot; doesn&apos;t tell me what type it is, and we
&gt; don&apos;t use &quot;item&quot; in other rendering code.
I am planning to rename it in an upcoming patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453786</commentid>
    <comment_count>4</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2018-08-26 21:03:31 -0700</bug_when>
    <thetext>Committed r235350: &lt;https://trac.webkit.org/changeset/235350&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453787</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-08-26 21:04:17 -0700</bug_when>
    <thetext>&lt;rdar://problem/43741775&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>347984</attachid>
            <date>2018-08-23 19:19:18 -0700</date>
            <delta_ts>2018-08-26 02:18:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-188912-20180823191918.patch</filename>
            <type>text/plain</type>
            <size>13124</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1MjI4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjJkOWZlYjdkYzEyNDg1
OWQyNTRiNTE3ZGJlYmEwYjE3MWM2ZDUzOC4uMWM3ZDg2NDZkYzhhMzczOTVlMjUwMzA2NTYzOWYy
YzY2NjZlODEzNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDE4LTA4LTIzICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW0xGQ11bRmxvYXRpbmddIFNp
bXBsaWZ5IEZsb2F0aW5nU3RhdGU6OkZsb2F0SXRlbSBjbGFzcworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg4OTEyCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTGV0J3MgcmVtb3ZlIHNvbWUgcmVkdW5kYW50
IGNvZGUgbm93IHRoYXQgRmxvYXRpbmdTdGF0ZTo6RmxvYXRJdGVtIGlzIG5vdCB1c2VkIGZvciBp
bmNvbWluZyBmbG9hdHMgYW55bW9yZS4KKworICAgICAgICAqIGxheW91dC9WZXJpZmljYXRpb24u
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpMYXlvdXRDb250ZXh0Ojp2ZXJpZnlBbmRP
dXRwdXRNaXNtYXRjaGluZ0xheW91dFRyZWUgY29uc3QpOgorICAgICAgICAqIGxheW91dC9mbG9h
dHMvRmxvYXRCb3guY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpGbG9hdEJveDo6cmVz
ZXRWZXJ0aWNhbGx5KToKKyAgICAgICAgKiBsYXlvdXQvZmxvYXRzL0Zsb2F0aW5nQ29udGV4dC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OkZsb2F0aW5nUGFpcjo6bGVmdCBjb25zdCk6
CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OkZsb2F0aW5nUGFpcjo6cmlnaHQgY29uc3QpOgor
ICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpGbG9hdGluZ1BhaXI6OmludGVyc2VjdHMgY29uc3Qp
OgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpwcmV2aW91c0Zsb2F0aW5nSW5kZXgpOgorICAg
ICAgICAoV2ViQ29yZTo6TGF5b3V0OjpJdGVyYXRvcjo6b3BlcmF0b3IrKyk6CisgICAgICAgIChX
ZWJDb3JlOjpMYXlvdXQ6Okl0ZXJhdG9yOjpzZXQpOgorICAgICAgICAqIGxheW91dC9mbG9hdHMv
RmxvYXRpbmdTdGF0ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OkZsb2F0aW5nU3Rh
dGU6OkZsb2F0SXRlbTo6RmxvYXRJdGVtKToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6Rmxv
YXRpbmdTdGF0ZTo6cmVtb3ZlKToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6RmxvYXRpbmdT
dGF0ZTo6Ym90dG9tIGNvbnN0KToKKyAgICAgICAgKiBsYXlvdXQvZmxvYXRzL0Zsb2F0aW5nU3Rh
dGUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6RmxvYXRpbmdTdGF0ZTo6RmxvYXRJdGVt
OjpvcGVyYXRvcj09IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6RmxvYXRpbmdT
dGF0ZTo6RmxvYXRJdGVtOjppc0xlZnRQb3NpdGlvbmVkIGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OkxheW91dDo6RmxvYXRpbmdTdGF0ZTo6RmxvYXRJdGVtOjpyZWN0V2l0aE1hcmdpbiBjb25z
dCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OkZsb2F0aW5nU3RhdGU6OkZsb2F0SXRlbTo6
Ym90dG9tIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6RmxvYXRpbmdTdGF0ZTo6
bGVmdEJvdHRvbSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OkZsb2F0aW5nU3Rh
dGU6OnJpZ2h0Qm90dG9tIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6RmxvYXRp
bmdTdGF0ZTo6Ym90dG9tIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6RmxvYXRp
bmdTdGF0ZTo6RmxvYXRJdGVtOjppbkZvcm1hdHRpbmdDb250ZXh0IGNvbnN0KToKKyAgICAgICAg
KFdlYkNvcmU6OkxheW91dDo6RmxvYXRpbmdTdGF0ZTo6RmxvYXRJdGVtOjpsYXlvdXRCb3ggY29u
c3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpGbG9hdGluZ1N0YXRlOjpG
bG9hdEl0ZW06OmNvbnRhaW5pbmdCbG9jayBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJD
b3JlOjpMYXlvdXQ6OkZsb2F0aW5nU3RhdGU6OkZsb2F0SXRlbTo6ZGlzcGxheUJveCBjb25zdCk6
IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OkZsb2F0aW5nU3RhdGU6OkZsb2F0
SXRlbTo6Y29udGFpbmluZ0Jsb2NrRGlzcGxheUJveCBjb25zdCk6IERlbGV0ZWQuCisKIDIwMTgt
MDgtMjMgIFphbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBbTEZDXVtG
bG9hdGluZ10gRGVjb3VwbGUgdGhlIGluY29taW5nIGZsb2F0cyBhbmQgZmxvYXRzIGFscmVhZHkg
cGxhY2VkIGluIHRoZSBsaXN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZmxv
YXRzL0Zsb2F0Qm94LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mbG9hdHMvRmxvYXRCb3gu
Y3BwCmluZGV4IGQ0MDEwY2UwMjAzMmJmNjdmNGQwM2Y0ZTMwN2U4YmRlYmU0NTE2ZWQuLmEzODE1
YjdkYzY0N2U0MjRhM2VlMTRmZjYxYTUzMTFmNDM4ZTA0NGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xheW91dC9mbG9hdHMvRmxvYXRCb3guY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xh
eW91dC9mbG9hdHMvRmxvYXRCb3guY3BwCkBAIC04Niw3ICs4Niw3IEBAIHZvaWQgRmxvYXRCb3g6
OnJlc2V0VmVydGljYWxseSgpCiAgICAgLy8gVGFrZSB0aGUgc3RhdGljIHBvc2l0aW9uICh3aGVy
ZSB0aGUgYm94IHdvdWxkIGdvIGlmIGl0IHdhc24ndCBmbG9hdGluZykgYW5kIGFkanVzdCBpdCB3
aXRoIHRoZSBsYXN0IGZsb2F0LgogICAgIGF1dG8gdG9wID0gbV9hYnNvbHV0ZURpc3BsYXlCb3gu
cmVjdFdpdGhNYXJnaW4oKS50b3AoKTsKICAgICBpZiAoYXV0byBsYXN0RmxvYXQgPSBtX2Zsb2F0
aW5nU3RhdGUubGFzdCgpKQotICAgICAgICB0b3AgPSBzdGQ6Om1heCh0b3AsIGxhc3RGbG9hdC0+
ZGlzcGxheUJveCgpLnJlY3RXaXRoTWFyZ2luKCkudG9wKCkpOworICAgICAgICB0b3AgPSBzdGQ6
Om1heCh0b3AsIGxhc3RGbG9hdC0+cmVjdFdpdGhNYXJnaW4oKS50b3AoKSk7CiAgICAgdG9wICs9
IG1fYWJzb2x1dGVEaXNwbGF5Qm94Lm1hcmdpblRvcCgpOwogCiAgICAgbV9hYnNvbHV0ZURpc3Bs
YXlCb3guc2V0VG9wKHRvcCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZmxv
YXRzL0Zsb2F0aW5nQ29udGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZmxvYXRzL0Zs
b2F0aW5nQ29udGV4dC5jcHAKaW5kZXggNWU0NjJkNDljMmNlMzZmMzYwMTdhYmE3YjgwOWZhNGRm
N2I0MGQ2MS4uZTZkNTg0NzE4ZTk3NjRhNmFlYWM5ZWMxY2I0MGI0OTBmYjBkZTYzNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zsb2F0cy9GbG9hdGluZ0NvbnRleHQuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mbG9hdHMvRmxvYXRpbmdDb250ZXh0LmNwcApAQCAt
NjQsOCArNjQsOCBAQCBjbGFzcyBJdGVyYXRvcjsKIGNsYXNzIEZsb2F0aW5nUGFpciB7CiBwdWJs
aWM6CiAgICAgYm9vbCBpc0VtcHR5KCkgY29uc3QgeyByZXR1cm4gIW1fbGVmdEluZGV4ICYmICFt
X3JpZ2h0SW5kZXg7IH0KLSAgICBjb25zdCBEaXNwbGF5OjpCb3gqIGxlZnQoKSBjb25zdDsKLSAg
ICBjb25zdCBEaXNwbGF5OjpCb3gqIHJpZ2h0KCkgY29uc3Q7CisgICAgY29uc3QgRmxvYXRpbmdT
dGF0ZTo6RmxvYXRJdGVtKiBsZWZ0KCkgY29uc3Q7CisgICAgY29uc3QgRmxvYXRpbmdTdGF0ZTo6
RmxvYXRJdGVtKiByaWdodCgpIGNvbnN0OwogICAgIGJvb2wgaW50ZXJzZWN0cyhjb25zdCBEaXNw
bGF5OjpCb3g6OlJlY3QmKSBjb25zdDsKICAgICBQb3NpdGlvbkluQ29udGV4dFJvb3QgdmVydGlj
YWxQb3NpdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fdmVydGljYWxQb3NpdGlvbjsgfQogICAgIHN0
ZDo6b3B0aW9uYWw8UG9zaXRpb25JbkNvbnRleHRSb290PiBob3JpenRvbmFsUG9zaXRpb24oRmxv
YXQpIGNvbnN0OwpAQCAtMjU0LDI3ICsyNTQsMjcgQEAgRmxvYXRpbmdQYWlyOjpGbG9hdGluZ1Bh
aXIoY29uc3QgRmxvYXRpbmdTdGF0ZTo6RmxvYXRMaXN0JiBmbG9hdHMpCiB7CiB9CiAKLWNvbnN0
IERpc3BsYXk6OkJveCogRmxvYXRpbmdQYWlyOjpsZWZ0KCkgY29uc3QKK2NvbnN0IEZsb2F0aW5n
U3RhdGU6OkZsb2F0SXRlbSogRmxvYXRpbmdQYWlyOjpsZWZ0KCkgY29uc3QKIHsKICAgICBpZiAo
IW1fbGVmdEluZGV4KQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAotICAgIEFTU0VSVChtX2Zs
b2F0c1sqbV9sZWZ0SW5kZXhdLmxheW91dEJveCgpLmlzTGVmdEZsb2F0aW5nUG9zaXRpb25lZCgp
KTsKLSAgICByZXR1cm4gJm1fZmxvYXRzWyptX2xlZnRJbmRleF0uZGlzcGxheUJveCgpOworICAg
IEFTU0VSVChtX2Zsb2F0c1sqbV9sZWZ0SW5kZXhdLmlzTGVmdFBvc2l0aW9uZWQoKSk7CisgICAg
cmV0dXJuICZtX2Zsb2F0c1sqbV9sZWZ0SW5kZXhdOwogfQogCi1jb25zdCBEaXNwbGF5OjpCb3gq
IEZsb2F0aW5nUGFpcjo6cmlnaHQoKSBjb25zdAorY29uc3QgRmxvYXRpbmdTdGF0ZTo6RmxvYXRJ
dGVtKiBGbG9hdGluZ1BhaXI6OnJpZ2h0KCkgY29uc3QKIHsKICAgICBpZiAoIW1fcmlnaHRJbmRl
eCkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKLSAgICBBU1NFUlQobV9mbG9hdHNbKm1fcmln
aHRJbmRleF0ubGF5b3V0Qm94KCkuaXNSaWdodEZsb2F0aW5nUG9zaXRpb25lZCgpKTsKLSAgICBy
ZXR1cm4gJm1fZmxvYXRzWyptX3JpZ2h0SW5kZXhdLmRpc3BsYXlCb3goKTsKKyAgICBBU1NFUlQo
IW1fZmxvYXRzWyptX3JpZ2h0SW5kZXhdLmlzTGVmdFBvc2l0aW9uZWQoKSk7CisgICAgcmV0dXJu
ICZtX2Zsb2F0c1sqbV9yaWdodEluZGV4XTsKIH0KIAogYm9vbCBGbG9hdGluZ1BhaXI6OmludGVy
c2VjdHMoY29uc3QgRGlzcGxheTo6Qm94OjpSZWN0JiBjYW5kaWRhdGVSZWN0KSBjb25zdAogewot
ICAgIGF1dG8gaW50ZXJzZWN0cyA9IFsmXShjb25zdCBEaXNwbGF5OjpCb3gqIGZsb2F0aW5nLCBG
bG9hdCBmbG9hdGluZ1R5cGUpIHsKKyAgICBhdXRvIGludGVyc2VjdHMgPSBbJl0oY29uc3QgRmxv
YXRpbmdTdGF0ZTo6RmxvYXRJdGVtKiBmbG9hdGluZywgRmxvYXQgZmxvYXRpbmdUeXBlKSB7CiAg
ICAgICAgIGlmICghZmxvYXRpbmcpCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAKQEAgLTM0
OCw4ICszNDgsOCBAQCBpbmxpbmUgc3RhdGljIHN0ZDo6b3B0aW9uYWw8dW5zaWduZWQ+IHByZXZp
b3VzRmxvYXRpbmdJbmRleChGbG9hdCBmbG9hdGluZ1R5cGUsCiAgICAgUkVMRUFTRV9BU1NFUlQo
Y3VycmVudEluZGV4IDw9IGZsb2F0cy5zaXplKCkpOwogCiAgICAgd2hpbGUgKGN1cnJlbnRJbmRl
eCkgewotICAgICAgICBhdXRvJiBmbG9hdGluZyA9IGZsb2F0c1stLWN1cnJlbnRJbmRleF0ubGF5
b3V0Qm94KCk7Ci0gICAgICAgIGlmICgoZmxvYXRpbmdUeXBlID09IEZsb2F0OjpMZWZ0ICYmIGZs
b2F0aW5nLmlzTGVmdEZsb2F0aW5nUG9zaXRpb25lZCgpKSB8fCAoZmxvYXRpbmdUeXBlID09IEZs
b2F0OjpSaWdodCAmJiBmbG9hdGluZy5pc1JpZ2h0RmxvYXRpbmdQb3NpdGlvbmVkKCkpKQorICAg
ICAgICBhdXRvJiBmbG9hdGluZyA9IGZsb2F0c1stLWN1cnJlbnRJbmRleF07CisgICAgICAgIGlm
ICgoZmxvYXRpbmdUeXBlID09IEZsb2F0OjpMZWZ0ICYmIGZsb2F0aW5nLmlzTGVmdFBvc2l0aW9u
ZWQoKSkgfHwgKGZsb2F0aW5nVHlwZSA9PSBGbG9hdDo6UmlnaHQgJiYgIWZsb2F0aW5nLmlzTGVm
dFBvc2l0aW9uZWQoKSkpCiAgICAgICAgICAgICByZXR1cm4gY3VycmVudEluZGV4OwogICAgIH0K
IApAQCAtMzcxLDcgKzM3MSw3IEBAIEl0ZXJhdG9yJiBJdGVyYXRvcjo6b3BlcmF0b3IrKygpCiAg
ICAgICAgIGlmICghY3VycmVudEluZGV4KQogICAgICAgICAgICAgcmV0dXJuIHsgfTsKIAotICAg
ICAgICBhdXRvIGN1cnJlbnRCb3R0b20gPSBtX2Zsb2F0c1tjdXJyZW50SW5kZXhdLmRpc3BsYXlC
b3goKS5yZWN0V2l0aE1hcmdpbigpLmJvdHRvbSgpOworICAgICAgICBhdXRvIGN1cnJlbnRCb3R0
b20gPSBtX2Zsb2F0c1tjdXJyZW50SW5kZXhdLnJlY3RXaXRoTWFyZ2luKCkuYm90dG9tKCk7CiAK
ICAgICAgICAgc3RkOjpvcHRpb25hbDx1bnNpZ25lZD4gaW5kZXggPSBjdXJyZW50SW5kZXg7CiAg
ICAgICAgIHdoaWxlICh0cnVlKSB7CkBAIC0zNzksNyArMzc5LDcgQEAgSXRlcmF0b3ImIEl0ZXJh
dG9yOjpvcGVyYXRvcisrKCkKICAgICAgICAgICAgIGlmICghaW5kZXgpCiAgICAgICAgICAgICAg
ICAgcmV0dXJuIHsgfTsKIAotICAgICAgICAgICAgaWYgKG1fZmxvYXRzWyppbmRleF0uZGlzcGxh
eUJveCgpLnJlY3RXaXRoTWFyZ2luKCkuYm90dG9tKCkgPiBjdXJyZW50Qm90dG9tKQorICAgICAg
ICAgICAgaWYgKG1fZmxvYXRzWyppbmRleF0ucmVjdFdpdGhNYXJnaW4oKS5ib3R0b20oKSA+IGN1
cnJlbnRCb3R0b20pCiAgICAgICAgICAgICAgICAgcmV0dXJuIGluZGV4OwogICAgICAgICB9CiAK
QEAgLTQ0Myw3ICs0NDMsNyBAQCB2b2lkIEl0ZXJhdG9yOjpzZXQoUG9zaXRpb25JbkNvbnRleHRS
b290IHZlcnRpY2FsUG9zaXRpb24pCiAgICAgICAgICAgICBpZiAoIWluZGV4KQogICAgICAgICAg
ICAgICAgIHJldHVybiB7IH07CiAKLSAgICAgICAgICAgIGF1dG8gYm90dG9tID0gbV9mbG9hdHNb
KmluZGV4XS5kaXNwbGF5Qm94KCkucmVjdFdpdGhNYXJnaW4oKS5ib3R0b20oKTsKKyAgICAgICAg
ICAgIGF1dG8gYm90dG9tID0gbV9mbG9hdHNbKmluZGV4XS5yZWN0V2l0aE1hcmdpbigpLmJvdHRv
bSgpOwogICAgICAgICAgICAgLy8gSXMgdGhpcyBmbG9hdGluZyBpbnRydXNpdmUgb24gdGhpcyBw
b3NpdGlvbj8KICAgICAgICAgICAgIGlmIChib3R0b20gPiB2ZXJ0aWNhbFBvc2l0aW9uKQogICAg
ICAgICAgICAgICAgIHJldHVybiBpbmRleDsKQEAgLTQ1NSw4ICs0NTUsOCBAQCB2b2lkIEl0ZXJh
dG9yOjpzZXQoUG9zaXRpb25JbkNvbnRleHRSb290IHZlcnRpY2FsUG9zaXRpb24pCiAgICAgbV9j
dXJyZW50Lm1fbGVmdEluZGV4ID0gZmluZEZsb2F0aW5nQmVsb3coRmxvYXQ6OkxlZnQpOwogICAg
IG1fY3VycmVudC5tX3JpZ2h0SW5kZXggPSBmaW5kRmxvYXRpbmdCZWxvdyhGbG9hdDo6UmlnaHQp
OwogCi0gICAgQVNTRVJUKCFtX2N1cnJlbnQubV9sZWZ0SW5kZXggfHwgKCptX2N1cnJlbnQubV9s
ZWZ0SW5kZXggPCBtX2Zsb2F0cy5zaXplKCkgJiYgbV9mbG9hdHNbKm1fY3VycmVudC5tX2xlZnRJ
bmRleF0ubGF5b3V0Qm94KCkuaXNMZWZ0RmxvYXRpbmdQb3NpdGlvbmVkKCkpKTsKLSAgICBBU1NF
UlQoIW1fY3VycmVudC5tX3JpZ2h0SW5kZXggfHwgKCptX2N1cnJlbnQubV9yaWdodEluZGV4IDwg
bV9mbG9hdHMuc2l6ZSgpICYmIG1fZmxvYXRzWyptX2N1cnJlbnQubV9yaWdodEluZGV4XS5sYXlv
dXRCb3goKS5pc1JpZ2h0RmxvYXRpbmdQb3NpdGlvbmVkKCkpKTsKKyAgICBBU1NFUlQoIW1fY3Vy
cmVudC5tX2xlZnRJbmRleCB8fCAoKm1fY3VycmVudC5tX2xlZnRJbmRleCA8IG1fZmxvYXRzLnNp
emUoKSAmJiBtX2Zsb2F0c1sqbV9jdXJyZW50Lm1fbGVmdEluZGV4XS5pc0xlZnRQb3NpdGlvbmVk
KCkpKTsKKyAgICBBU1NFUlQoIW1fY3VycmVudC5tX3JpZ2h0SW5kZXggfHwgKCptX2N1cnJlbnQu
bV9yaWdodEluZGV4IDwgbV9mbG9hdHMuc2l6ZSgpICYmICFtX2Zsb2F0c1sqbV9jdXJyZW50Lm1f
cmlnaHRJbmRleF0uaXNMZWZ0UG9zaXRpb25lZCgpKSk7CiB9CiAKIGJvb2wgSXRlcmF0b3I6Om9w
ZXJhdG9yPT0oY29uc3QgSXRlcmF0b3ImIG90aGVyKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvbGF5b3V0L2Zsb2F0cy9GbG9hdGluZ1N0YXRlLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2xheW91dC9mbG9hdHMvRmxvYXRpbmdTdGF0ZS5jcHAKaW5kZXggYTgyZmY4YWQyYjg2MmJkMTVj
ZGVlNzVjZjY5Y2IyMjEwMDc3YjM4Ni4uMzFkNTJjM2VmNTdkYTZkZDAwNjYyYjM1MDNhYjg2OGQ4
ZDY2MDUzNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zsb2F0cy9GbG9hdGlu
Z1N0YXRlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZmxvYXRzL0Zsb2F0aW5nU3Rh
dGUuY3BwCkBAIC00MSw5ICs0MSw3IEBAIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU1QTChGbG9h
dGluZ1N0YXRlKTsKIAogRmxvYXRpbmdTdGF0ZTo6RmxvYXRJdGVtOjpGbG9hdEl0ZW0oY29uc3Qg
Qm94JiBsYXlvdXRCb3gsIGNvbnN0IEZsb2F0aW5nU3RhdGUmIGZsb2F0aW5nU3RhdGUpCiAgICAg
OiBtX2xheW91dEJveChtYWtlV2Vha1B0cihjb25zdF9jYXN0PEJveCY+KGxheW91dEJveCkpKQot
ICAgICwgbV9jb250YWluaW5nQmxvY2sobWFrZVdlYWtQdHIoY29uc3RfY2FzdDxDb250YWluZXIm
PigqbGF5b3V0Qm94LmNvbnRhaW5pbmdCbG9jaygpKSkpCiAgICAgLCBtX2Fic29sdXRlRGlzcGxh
eUJveChGb3JtYXR0aW5nQ29udGV4dDo6bWFwQm94VG9BbmNlc3RvcihmbG9hdGluZ1N0YXRlLmxh
eW91dENvbnRleHQoKSwgbGF5b3V0Qm94LCBkb3duY2FzdDxDb250YWluZXI+KGZsb2F0aW5nU3Rh
dGUucm9vdCgpKSkpCi0gICAgLCBtX2NvbnRhaW5pbmdCbG9ja0Fic29sdXRlRGlzcGxheUJveChG
b3JtYXR0aW5nQ29udGV4dDo6bWFwQm94VG9BbmNlc3RvcihmbG9hdGluZ1N0YXRlLmxheW91dENv
bnRleHQoKSwgKm1fY29udGFpbmluZ0Jsb2NrLCBkb3duY2FzdDxDb250YWluZXI+KGZsb2F0aW5n
U3RhdGUucm9vdCgpKSkpCiB7CiB9CiAKQEAgLTcxLDcgKzY5LDcgQEAgc3RhdGljIGJvb2wgYmVs
b25nc1RvVGhpc0Zsb2F0aW5nQ29udGV4dChjb25zdCBCb3gmIGxheW91dEJveCwgY29uc3QgQm94
JiBmbG9hdGkKIHZvaWQgRmxvYXRpbmdTdGF0ZTo6cmVtb3ZlKGNvbnN0IEJveCYgbGF5b3V0Qm94
KQogewogICAgIGZvciAoc2l6ZV90IGluZGV4ID0gMDsgaW5kZXggPCBtX2Zsb2F0cy5zaXplKCk7
ICsraW5kZXgpIHsKLSAgICAgICAgaWYgKCZtX2Zsb2F0c1tpbmRleF0ubGF5b3V0Qm94KCkgPT0g
JmxheW91dEJveCkgeworICAgICAgICBpZiAobV9mbG9hdHNbaW5kZXhdID09IGxheW91dEJveCkg
ewogICAgICAgICAgICAgbV9mbG9hdHMucmVtb3ZlKGluZGV4KTsKICAgICAgICAgICAgIHJldHVy
bjsKICAgICAgICAgfQpAQCAtMTAxLDE0ICs5OSwxNCBAQCBzdGQ6Om9wdGlvbmFsPExheW91dFVu
aXQ+IEZsb2F0aW5nU3RhdGU6OmJvdHRvbShjb25zdCBCb3gmIGZvcm1hdHRpbmdDb250ZXh0Um9v
dAogICAgIHN0ZDo6b3B0aW9uYWw8TGF5b3V0VW5pdD4gYm90dG9tOwogICAgIGZvciAoYXV0byYg
ZmxvYXRJdGVtIDogbV9mbG9hdHMpIHsKICAgICAgICAgLy8gSWdub3JlIGZsb2F0cyBmcm9tIG90
aGVyIGZvcm1hdHRpbmcgY29udGV4dHMgd2hlbiB0aGUgZmxvYXRpbmcgc3RhdGUgaXMgaW5oZXJp
dGVkLgotICAgICAgICBpZiAoJmZvcm1hdHRpbmdDb250ZXh0Um9vdCAhPSAmZmxvYXRJdGVtLmxh
eW91dEJveCgpLmZvcm1hdHRpbmdDb250ZXh0Um9vdCgpKQorICAgICAgICBpZiAoIWZsb2F0SXRl
bS5pbkZvcm1hdHRpbmdDb250ZXh0KGZvcm1hdHRpbmdDb250ZXh0Um9vdCkpCiAgICAgICAgICAg
ICBjb250aW51ZTsKIAotICAgICAgICBpZiAoKHR5cGUgPT0gQ2xlYXI6OkxlZnQgJiYgIWZsb2F0
SXRlbS5sYXlvdXRCb3goKS5pc0xlZnRGbG9hdGluZ1Bvc2l0aW9uZWQoKSkKLSAgICAgICAgICAg
IHx8ICh0eXBlID09IENsZWFyOjpSaWdodCAmJiAhZmxvYXRJdGVtLmxheW91dEJveCgpLmlzUmln
aHRGbG9hdGluZ1Bvc2l0aW9uZWQoKSkpCisgICAgICAgIGlmICgodHlwZSA9PSBDbGVhcjo6TGVm
dCAmJiAhZmxvYXRJdGVtLmlzTGVmdFBvc2l0aW9uZWQoKSkKKyAgICAgICAgICAgIHx8ICh0eXBl
ID09IENsZWFyOjpSaWdodCAmJiBmbG9hdEl0ZW0uaXNMZWZ0UG9zaXRpb25lZCgpKSkKICAgICAg
ICAgICAgIGNvbnRpbnVlOwogCi0gICAgICAgIGF1dG8gZmxvYXRzQm90dG9tID0gZmxvYXRJdGVt
LmRpc3BsYXlCb3goKS5yZWN0V2l0aE1hcmdpbigpLmJvdHRvbSgpOworICAgICAgICBhdXRvIGZs
b2F0c0JvdHRvbSA9IGZsb2F0SXRlbS5yZWN0V2l0aE1hcmdpbigpLmJvdHRvbSgpOwogICAgICAg
ICBpZiAoYm90dG9tKSB7CiAgICAgICAgICAgICBib3R0b20gPSBzdGQ6Om1heCgqYm90dG9tLCBm
bG9hdHNCb3R0b20pOwogICAgICAgICAgICAgY29udGludWU7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvZmxvYXRzL0Zsb2F0aW5nU3RhdGUuaCBiL1NvdXJjZS9XZWJDb3JlL2xh
eW91dC9mbG9hdHMvRmxvYXRpbmdTdGF0ZS5oCmluZGV4IDc3ZDcxMzBjMzBhYmNmN2QzNTM3OGEx
ZjViMTc5NWQyZWJlNzJkZDcuLjhmNWY1YzMzZjBlOTNlZDkyZjc0MjlkMmU2NGY1Y2I5ZDFlMjY1
MDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mbG9hdHMvRmxvYXRpbmdTdGF0
ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mbG9hdHMvRmxvYXRpbmdTdGF0ZS5oCkBA
IC0yOCw2ICsyOCw4IEBACiAjaWYgRU5BQkxFKExBWU9VVF9GT1JNQVRUSU5HX0NPTlRFWFQpCiAK
ICNpbmNsdWRlICJEaXNwbGF5Qm94LmgiCisjaW5jbHVkZSAiTGF5b3V0Qm94LmgiCisjaW5jbHVk
ZSAiTGF5b3V0Q29udGFpbmVyLmgiCiAjaW5jbHVkZSA8d3RmL0lzb01hbGxvYy5oPgogI2luY2x1
ZGUgPHd0Zi9SZWYuaD4KICNpbmNsdWRlIDx3dGYvV2Vha1B0ci5oPgpAQCAtMzYsOCArMzgsNiBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIG5hbWVzcGFjZSBMYXlvdXQgewogCi1jbGFzcyBCb3g7
Ci1jbGFzcyBDb250YWluZXI7CiBjbGFzcyBGb3JtYXR0aW5nU3RhdGU7CiBjbGFzcyBMYXlvdXRD
b250ZXh0OwogCkBAIC02MiwxOCArNjIsMTcgQEAgcHVibGljOgogICAgIHB1YmxpYzoKICAgICAg
ICAgRmxvYXRJdGVtKGNvbnN0IEJveCYsIGNvbnN0IEZsb2F0aW5nU3RhdGUmKTsKIAotICAgICAg
ICBjb25zdCBCb3gmIGxheW91dEJveCgpIGNvbnN0IHsgcmV0dXJuICptX2xheW91dEJveDsgfQot
ICAgICAgICBjb25zdCBDb250YWluZXImIGNvbnRhaW5pbmdCbG9jaygpIGNvbnN0IHsgcmV0dXJu
ICptX2NvbnRhaW5pbmdCbG9jazsgfQorICAgICAgICBib29sIG9wZXJhdG9yPT0oY29uc3QgQm94
JiBsYXlvdXRCb3gpIGNvbnN0IHsgcmV0dXJuIG1fbGF5b3V0Qm94LmdldCgpID09ICZsYXlvdXRC
b3g7IH0KIAotICAgICAgICBjb25zdCBEaXNwbGF5OjpCb3gmIGRpc3BsYXlCb3goKSBjb25zdCB7
IHJldHVybiBtX2Fic29sdXRlRGlzcGxheUJveDsgfQotICAgICAgICBjb25zdCBEaXNwbGF5OjpC
b3gmIGNvbnRhaW5pbmdCbG9ja0Rpc3BsYXlCb3goKSBjb25zdCB7IHJldHVybiBtX2NvbnRhaW5p
bmdCbG9ja0Fic29sdXRlRGlzcGxheUJveDsgfQorICAgICAgICBib29sIGlzTGVmdFBvc2l0aW9u
ZWQoKSBjb25zdCB7IHJldHVybiBtX2xheW91dEJveC0+aXNMZWZ0RmxvYXRpbmdQb3NpdGlvbmVk
KCk7IH0KKyAgICAgICAgYm9vbCBpbkZvcm1hdHRpbmdDb250ZXh0KGNvbnN0IEJveCYpIGNvbnN0
OworCisgICAgICAgIERpc3BsYXk6OkJveDo6UmVjdCByZWN0V2l0aE1hcmdpbigpIGNvbnN0IHsg
cmV0dXJuIG1fYWJzb2x1dGVEaXNwbGF5Qm94LnJlY3RXaXRoTWFyZ2luKCk7IH0KKyAgICAgICAg
UG9zaXRpb25JbkNvbnRleHRSb290IGJvdHRvbSgpIGNvbnN0IHsgcmV0dXJuIG1fYWJzb2x1dGVE
aXNwbGF5Qm94LmJvdHRvbSgpOyB9CiAKICAgICBwcml2YXRlOgogICAgICAgICBXZWFrUHRyPEJv
eD4gbV9sYXlvdXRCb3g7Ci0gICAgICAgIFdlYWtQdHI8Q29udGFpbmVyPiBtX2NvbnRhaW5pbmdC
bG9jazsKLQogICAgICAgICBEaXNwbGF5OjpCb3ggbV9hYnNvbHV0ZURpc3BsYXlCb3g7Ci0gICAg
ICAgIERpc3BsYXk6OkJveCBtX2NvbnRhaW5pbmdCbG9ja0Fic29sdXRlRGlzcGxheUJveDsKICAg
ICB9OwogICAgIHVzaW5nIEZsb2F0TGlzdCA9IFZlY3RvcjxGbG9hdEl0ZW0+OwogICAgIGNvbnN0
IEZsb2F0TGlzdCYgZmxvYXRzKCkgY29uc3QgeyByZXR1cm4gbV9mbG9hdHM7IH0KQEAgLTk0LDE5
ICs5MywyOCBAQCBwcml2YXRlOgogCiBpbmxpbmUgc3RkOjpvcHRpb25hbDxMYXlvdXRVbml0PiBG
bG9hdGluZ1N0YXRlOjpsZWZ0Qm90dG9tKGNvbnN0IEJveCYgZm9ybWF0dGluZ0NvbnRleHRSb290
KSBjb25zdAogeyAKKyAgICBBU1NFUlQoZm9ybWF0dGluZ0NvbnRleHRSb290LmVzdGFibGlzaGVz
Rm9ybWF0dGluZ0NvbnRleHQoKSk7IAogICAgIHJldHVybiBib3R0b20oZm9ybWF0dGluZ0NvbnRl
eHRSb290LCBDbGVhcjo6TGVmdCk7CiB9CiAKIGlubGluZSBzdGQ6Om9wdGlvbmFsPExheW91dFVu
aXQ+IEZsb2F0aW5nU3RhdGU6OnJpZ2h0Qm90dG9tKGNvbnN0IEJveCYgZm9ybWF0dGluZ0NvbnRl
eHRSb290KSBjb25zdAogeworICAgIEFTU0VSVChmb3JtYXR0aW5nQ29udGV4dFJvb3QuZXN0YWJs
aXNoZXNGb3JtYXR0aW5nQ29udGV4dCgpKTsgCiAgICAgcmV0dXJuIGJvdHRvbShmb3JtYXR0aW5n
Q29udGV4dFJvb3QsIENsZWFyOjpSaWdodCk7CiB9CiAKIGlubGluZSBzdGQ6Om9wdGlvbmFsPExh
eW91dFVuaXQ+IEZsb2F0aW5nU3RhdGU6OmJvdHRvbShjb25zdCBCb3gmIGZvcm1hdHRpbmdDb250
ZXh0Um9vdCkgY29uc3QKIHsKKyAgICBBU1NFUlQoZm9ybWF0dGluZ0NvbnRleHRSb290LmVzdGFi
bGlzaGVzRm9ybWF0dGluZ0NvbnRleHQoKSk7IAogICAgIHJldHVybiBib3R0b20oZm9ybWF0dGlu
Z0NvbnRleHRSb290LCBDbGVhcjo6Qm90aCk7CiB9CiAKK2lubGluZSBib29sIEZsb2F0aW5nU3Rh
dGU6OkZsb2F0SXRlbTo6aW5Gb3JtYXR0aW5nQ29udGV4dChjb25zdCBCb3gmIGZvcm1hdHRpbmdD
b250ZXh0Um9vdCkgY29uc3QKK3sKKyAgICBBU1NFUlQoZm9ybWF0dGluZ0NvbnRleHRSb290LmVz
dGFibGlzaGVzRm9ybWF0dGluZ0NvbnRleHQoKSk7IAorICAgIHJldHVybiAmbV9sYXlvdXRCb3gt
PmZvcm1hdHRpbmdDb250ZXh0Um9vdCgpID09ICZmb3JtYXR0aW5nQ29udGV4dFJvb3Q7Cit9CisK
IH0KIH0KICNlbmRpZgo=
</data>
<flag name="review"
          id="365690"
          type_id="1"
          status="+"
          setter="koivisto"
    />
          </attachment>
      

    </bug>

</bugzilla>