<?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>193383</bug_id>
          
          <creation_ts>2019-01-12 12:44:49 -0800</creation_ts>
          <short_desc>[LFC] Block/InlinFormattingContext should take Block/InlineFormattingState</short_desc>
          <delta_ts>2019-01-12 13:29:33 -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="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>1493995</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2019-01-12 12:44:49 -0800</bug_when>
    <thetext>This is a just downcast really.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1493996</commentid>
    <comment_count>1</comment_count>
      <attachid>358995</attachid>
    <who name="alan">zalan</who>
    <bug_when>2019-01-12 12:47:00 -0800</bug_when>
    <thetext>Created attachment 358995
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1493997</commentid>
    <comment_count>2</comment_count>
      <attachid>358995</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2019-01-12 12:55:03 -0800</bug_when>
    <thetext>Comment on attachment 358995
Patch

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

&gt; Source/WebCore/layout/FormattingContext.h:-68
&gt; -    FormattingState&amp; formattingState() const;

I think you could also keep this as-is (and keep m_formattingState private). You can override a function with a more specific return type in the subclass:

BlockFormattingState&amp; formattingState() const { return downcast&lt;BlockFormattingState&gt;(FormattingContext::formattingState()); }</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1493999</commentid>
    <comment_count>3</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2019-01-12 13:28:21 -0800</bug_when>
    <thetext>Committed r239903: &lt;https://trac.webkit.org/changeset/239903&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1494000</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-01-12 13:29:33 -0800</bug_when>
    <thetext>&lt;rdar://problem/47234302&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>358995</attachid>
            <date>2019-01-12 12:47:00 -0800</date>
            <delta_ts>2019-01-12 12:55:03 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-193383-20190112124647.patch</filename>
            <type>text/plain</type>
            <size>13659</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM5OTAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWJhZjhjYmI2NTI1NzM5
ODI0N2I3NGU5ZDViYzU3MDY5ZjA0YWUwMi4uY2EwOGI2NGZkZTE3MGEzNmI5OWYwOWYwODkwNDQz
NmIwMjdjMmZiZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM4IEBACisyMDE5LTAxLTEyICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW0xGQ10gQmxvY2svSW5saW5G
b3JtYXR0aW5nQ29udGV4dCBzaG91bGQgdGFrZSBCbG9jay9JbmxpbmVGb3JtYXR0aW5nU3RhdGUK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MzM4Mwor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgaXMg
anVzdCBhIGRvd25jYXN0IHJlYWxseS4KKworICAgICAgICAqIGxheW91dC9Gb3JtYXR0aW5nQ29u
dGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OkZvcm1hdHRpbmdDb250ZXh0OjpG
b3JtYXR0aW5nQ29udGV4dCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OkZvcm1hdHRpbmdD
b250ZXh0Ojpmb3JtYXR0aW5nU3RhdGUgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAqIGxheW91
dC9Gb3JtYXR0aW5nQ29udGV4dC5oOgorICAgICAgICAqIGxheW91dC9MYXlvdXRTdGF0ZS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OkxheW91dFN0YXRlOjpjcmVhdGVGb3JtYXR0aW5n
Q29udGV4dCk6CisgICAgICAgICogbGF5b3V0L2Jsb2NrZm9ybWF0dGluZy9CbG9ja0Zvcm1hdHRp
bmdDb250ZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6QmxvY2tGb3JtYXR0aW5n
Q29udGV4dDo6QmxvY2tGb3JtYXR0aW5nQ29udGV4dCk6CisgICAgICAgICogbGF5b3V0L2Jsb2Nr
Zm9ybWF0dGluZy9CbG9ja0Zvcm1hdHRpbmdDb250ZXh0Lmg6CisgICAgICAgIChXZWJDb3JlOjpM
YXlvdXQ6OkJsb2NrRm9ybWF0dGluZ0NvbnRleHQ6OmZvcm1hdHRpbmdTdGF0ZSBjb25zdCk6Cisg
ICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OkJsb2NrRm9ybWF0dGluZ0NvbnRleHQ6OmJsb2NrRm9y
bWF0dGluZ1N0YXRlIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKiBsYXlvdXQvaW5saW5lZm9y
bWF0dGluZy9JbmxpbmVGb3JtYXR0aW5nQ29udGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpM
YXlvdXQ6OklubGluZUZvcm1hdHRpbmdDb250ZXh0OjpJbmxpbmVGb3JtYXR0aW5nQ29udGV4dCk6
CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OklubGluZUZvcm1hdHRpbmdDb250ZXh0OjpzcGxp
dElubGluZVJ1bklmTmVlZGVkIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6SW5s
aW5lRm9ybWF0dGluZ0NvbnRleHQ6OmNyZWF0ZUZpbmFsUnVucyBjb25zdCk6CisgICAgICAgIChX
ZWJDb3JlOjpMYXlvdXQ6OklubGluZUZvcm1hdHRpbmdDb250ZXh0Ojpwb3N0UHJvY2Vzc0lubGlu
ZVJ1bnMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpJbmxpbmVGb3JtYXR0aW5n
Q29udGV4dDo6bGF5b3V0SW5saW5lQ29udGVudCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpM
YXlvdXQ6OklubGluZUZvcm1hdHRpbmdDb250ZXh0OjpwbGFjZUluRmxvd1Bvc2l0aW9uZWRDaGls
ZHJlbiBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OklubGluZUZvcm1hdHRpbmdD
b250ZXh0Ojpjb2xsZWN0SW5saW5lQ29udGVudEZvclN1YnRyZWUgY29uc3QpOgorICAgICAgICAo
V2ViQ29yZTo6TGF5b3V0OjpJbmxpbmVGb3JtYXR0aW5nQ29udGV4dDo6aW5zdHJpbnNpY1dpZHRo
Q29uc3RyYWludHMgY29uc3QpOgorICAgICAgICAqIGxheW91dC9pbmxpbmVmb3JtYXR0aW5nL0lu
bGluZUZvcm1hdHRpbmdDb250ZXh0Lmg6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OklubGlu
ZUZvcm1hdHRpbmdDb250ZXh0Ojpmb3JtYXR0aW5nU3RhdGUgY29uc3QpOgorICAgICAgICAoV2Vi
Q29yZTo6TGF5b3V0OjpJbmxpbmVGb3JtYXR0aW5nQ29udGV4dDo6aW5saW5lRm9ybWF0dGluZ1N0
YXRlIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKiBwYWdlL0ZyYW1lVmlld0xheW91dENvbnRl
eHQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6bGF5b3V0VXNpbmdGb3JtYXR0aW5nQ29udGV4dCk6
CisKIDIwMTktMDEtMTIgIFphbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAg
ICBbTEZDXSBNb3ZlIGZvcm1hdHRpbmcgY29udGV4dCBjcmVhdGlvbiBmcm9tIEZvcm1hdHRpbmdT
dGF0ZSB0byBMYXlvdXRTdGF0ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L0Zv
cm1hdHRpbmdDb250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9Gb3JtYXR0aW5nQ29u
dGV4dC5jcHAKaW5kZXggZDVhODNlZDE1ZDFiNTc2ZDI2MDI3ODJjMDg4NmJhN2E4NDMxZjU3NC4u
MjZiNjg5YTZhMTNmM2YzZDY0MTEyOThjZTFiMWM3MmEyMmNhYzliOSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvbGF5b3V0L0Zvcm1hdHRpbmdDb250ZXh0LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9sYXlvdXQvRm9ybWF0dGluZ0NvbnRleHQuY3BwCkBAIC00NCw4ICs0NCw4IEBAIG5hbWVz
cGFjZSBMYXlvdXQgewogV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9JTVBMKEZvcm1hdHRpbmdDb250
ZXh0KTsKIAogRm9ybWF0dGluZ0NvbnRleHQ6OkZvcm1hdHRpbmdDb250ZXh0KGNvbnN0IEJveCYg
Zm9ybWF0dGluZ0NvbnRleHRSb290LCBGb3JtYXR0aW5nU3RhdGUmIGZvcm1hdHRpbmdTdGF0ZSkK
LSAgICA6IG1fcm9vdChtYWtlV2Vha1B0cihmb3JtYXR0aW5nQ29udGV4dFJvb3QpKQotICAgICwg
bV9mb3JtYXR0aW5nU3RhdGUoZm9ybWF0dGluZ1N0YXRlKQorICAgIDogbV9mb3JtYXR0aW5nU3Rh
dGUoZm9ybWF0dGluZ1N0YXRlKQorICAgICwgbV9yb290KG1ha2VXZWFrUHRyKGZvcm1hdHRpbmdD
b250ZXh0Um9vdCkpCiB7CiAjaWZuZGVmIE5ERUJVRwogICAgIGxheW91dFN0YXRlKCkucmVnaXN0
ZXJGb3JtYXR0aW5nQ29udGV4dCgqdGhpcyk7CkBAIC01OSwxMSArNTksNiBAQCBGb3JtYXR0aW5n
Q29udGV4dDo6fkZvcm1hdHRpbmdDb250ZXh0KCkKICNlbmRpZgogfQogCi1Gb3JtYXR0aW5nU3Rh
dGUmIEZvcm1hdHRpbmdDb250ZXh0Ojpmb3JtYXR0aW5nU3RhdGUoKSBjb25zdAotewotICAgIHJl
dHVybiBtX2Zvcm1hdHRpbmdTdGF0ZTsKLX0KLQogTGF5b3V0U3RhdGUmIEZvcm1hdHRpbmdDb250
ZXh0OjpsYXlvdXRTdGF0ZSgpIGNvbnN0CiB7CiAgICAgcmV0dXJuIG1fZm9ybWF0dGluZ1N0YXRl
LmxheW91dFN0YXRlKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvRm9ybWF0
dGluZ0NvbnRleHQuaCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9Gb3JtYXR0aW5nQ29udGV4dC5o
CmluZGV4IDQyZDcyOWI3NTE3Mjc0N2E5MWUxY2Q5ZmEwZGZjNTE4OGNkMGI5YzEuLjQ4ZTY0Mzk3
ZTgwNmE0ZTdmZDlkYjBiNjU5ZTRlOTAxNjU1M2UzNmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xheW91dC9Gb3JtYXR0aW5nQ29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91
dC9Gb3JtYXR0aW5nQ29udGV4dC5oCkBAIC02NSw3ICs2NSw2IEBAIHB1YmxpYzoKIHByb3RlY3Rl
ZDoKICAgICB1c2luZyBMYXlvdXRRdWV1ZSA9IFZlY3Rvcjxjb25zdCBCb3gqPjsKIAotICAgIEZv
cm1hdHRpbmdTdGF0ZSYgZm9ybWF0dGluZ1N0YXRlKCkgY29uc3Q7CiAgICAgTGF5b3V0U3RhdGUm
IGxheW91dFN0YXRlKCkgY29uc3Q7CiAgICAgY29uc3QgQm94JiByb290KCkgY29uc3QgeyByZXR1
cm4gKm1fcm9vdDsgfQogCkBAIC0xMjcsMTIgKzEyNiwxMyBAQCBwcm90ZWN0ZWQ6CiAgICAgICAg
IHN0YXRpYyBMYXlvdXRVbml0IGhlaWdodFZhbHVlT2ZOZWFyZXN0Q29udGFpbmluZ0Jsb2NrV2l0
aEZpeGVkSGVpZ2h0KGNvbnN0IExheW91dFN0YXRlJiwgY29uc3QgQm94Jik7CiAgICAgfTsKIAor
ICAgIEZvcm1hdHRpbmdTdGF0ZSYgbV9mb3JtYXR0aW5nU3RhdGU7CisKIHByaXZhdGU6CiAgICAg
dm9pZCBjb21wdXRlT3V0T2ZGbG93VmVydGljYWxHZW9tZXRyeShjb25zdCBCb3gmKSBjb25zdDsK
ICAgICB2b2lkIGNvbXB1dGVPdXRPZkZsb3dIb3Jpem9udGFsR2VvbWV0cnkoY29uc3QgQm94Jikg
Y29uc3Q7CiAKICAgICBXZWFrUHRyPGNvbnN0IEJveD4gbV9yb290OwotICAgIEZvcm1hdHRpbmdT
dGF0ZSYgbV9mb3JtYXR0aW5nU3RhdGU7CiB9OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sYXlvdXQvTGF5b3V0U3RhdGUuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L0xheW91
dFN0YXRlLmNwcAppbmRleCBiNDc2NWQyODhmYTk3MWM3YjdjMTI0Y2ZlNzcxYmU1MmE1MmY1MDk3
Li5jOTg2MjhiOGRjYmM1ZjY4MWZiM2JmYjExZjBiNWQ1ZWNlYzczZGM4IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sYXlvdXQvTGF5b3V0U3RhdGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2xheW91dC9MYXlvdXRTdGF0ZS5jcHAKQEAgLTE1MywxMiArMTUzLDE1IEBAIEZvcm1hdHRpbmdT
dGF0ZSYgTGF5b3V0U3RhdGU6OmNyZWF0ZUZvcm1hdHRpbmdTdGF0ZUZvckZvcm1hdHRpbmdSb290
SWZOZWVkZWQoY29uCiBzdGQ6OnVuaXF1ZV9wdHI8Rm9ybWF0dGluZ0NvbnRleHQ+IExheW91dFN0
YXRlOjpjcmVhdGVGb3JtYXR0aW5nQ29udGV4dChjb25zdCBCb3gmIGZvcm1hdHRpbmdDb250ZXh0
Um9vdCkKIHsKICAgICBBU1NFUlQoZm9ybWF0dGluZ0NvbnRleHRSb290LmVzdGFibGlzaGVzRm9y
bWF0dGluZ0NvbnRleHQoKSk7Ci0gICAgaWYgKGZvcm1hdHRpbmdDb250ZXh0Um9vdC5lc3RhYmxp
c2hlc0lubGluZUZvcm1hdHRpbmdDb250ZXh0KCkpCi0gICAgICAgIHJldHVybiBzdGQ6Om1ha2Vf
dW5pcXVlPElubGluZUZvcm1hdHRpbmdDb250ZXh0Pihmb3JtYXR0aW5nQ29udGV4dFJvb3QsIGNy
ZWF0ZUZvcm1hdHRpbmdTdGF0ZUZvckZvcm1hdHRpbmdSb290SWZOZWVkZWQoZm9ybWF0dGluZ0Nv
bnRleHRSb290KSk7CisgICAgaWYgKGZvcm1hdHRpbmdDb250ZXh0Um9vdC5lc3RhYmxpc2hlc0lu
bGluZUZvcm1hdHRpbmdDb250ZXh0KCkpIHsKKyAgICAgICAgYXV0byYgaW5saW5lRm9ybWF0dGlu
Z1N0YXRlID0gZG93bmNhc3Q8SW5saW5lRm9ybWF0dGluZ1N0YXRlPihjcmVhdGVGb3JtYXR0aW5n
U3RhdGVGb3JGb3JtYXR0aW5nUm9vdElmTmVlZGVkKGZvcm1hdHRpbmdDb250ZXh0Um9vdCkpOwor
ICAgICAgICByZXR1cm4gc3RkOjptYWtlX3VuaXF1ZTxJbmxpbmVGb3JtYXR0aW5nQ29udGV4dD4o
Zm9ybWF0dGluZ0NvbnRleHRSb290LCBpbmxpbmVGb3JtYXR0aW5nU3RhdGUpOworICAgIH0KIAog
ICAgIGlmIChmb3JtYXR0aW5nQ29udGV4dFJvb3QuZXN0YWJsaXNoZXNCbG9ja0Zvcm1hdHRpbmdD
b250ZXh0KCkpIHsKICAgICAgICAgQVNTRVJUKGZvcm1hdHRpbmdDb250ZXh0Um9vdC5lc3RhYmxp
c2hlc0Jsb2NrRm9ybWF0dGluZ0NvbnRleHRPbmx5KCkpOwotICAgICAgICByZXR1cm4gc3RkOjpt
YWtlX3VuaXF1ZTxCbG9ja0Zvcm1hdHRpbmdDb250ZXh0Pihmb3JtYXR0aW5nQ29udGV4dFJvb3Qs
IGNyZWF0ZUZvcm1hdHRpbmdTdGF0ZUZvckZvcm1hdHRpbmdSb290SWZOZWVkZWQoZm9ybWF0dGlu
Z0NvbnRleHRSb290KSk7CisgICAgICAgIGF1dG8mIGJsb2NrRm9ybWF0dGluZ1N0YXRlID0gZG93
bmNhc3Q8QmxvY2tGb3JtYXR0aW5nU3RhdGU+KGNyZWF0ZUZvcm1hdHRpbmdTdGF0ZUZvckZvcm1h
dHRpbmdSb290SWZOZWVkZWQoZm9ybWF0dGluZ0NvbnRleHRSb290KSk7CisgICAgICAgIHJldHVy
biBzdGQ6Om1ha2VfdW5pcXVlPEJsb2NrRm9ybWF0dGluZ0NvbnRleHQ+KGZvcm1hdHRpbmdDb250
ZXh0Um9vdCwgYmxvY2tGb3JtYXR0aW5nU3RhdGUpOwogICAgIH0KIAogICAgIENSQVNIKCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvYmxvY2tmb3JtYXR0aW5nL0Jsb2NrRm9y
bWF0dGluZ0NvbnRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Jsb2NrZm9ybWF0dGlu
Zy9CbG9ja0Zvcm1hdHRpbmdDb250ZXh0LmNwcAppbmRleCAyZmFmNzVlNGIxNGI0M2Q4Y2ZmODYz
Yjc3YzdlOGMwNWRmNDUwODNmLi4xZjQ0NjVhYTk5ZjYwNmQ5MzM1ZWJmYzQzYWMwYjNiYWQ0NjJk
NjI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvYmxvY2tmb3JtYXR0aW5nL0Js
b2NrRm9ybWF0dGluZ0NvbnRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9ibG9j
a2Zvcm1hdHRpbmcvQmxvY2tGb3JtYXR0aW5nQ29udGV4dC5jcHAKQEAgLTQ0LDcgKzQ0LDcgQEAg
bmFtZXNwYWNlIExheW91dCB7CiAKIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU1QTChCbG9ja0Zv
cm1hdHRpbmdDb250ZXh0KTsKIAotQmxvY2tGb3JtYXR0aW5nQ29udGV4dDo6QmxvY2tGb3JtYXR0
aW5nQ29udGV4dChjb25zdCBCb3gmIGZvcm1hdHRpbmdDb250ZXh0Um9vdCwgRm9ybWF0dGluZ1N0
YXRlJiBmb3JtYXR0aW5nU3RhdGUpCitCbG9ja0Zvcm1hdHRpbmdDb250ZXh0OjpCbG9ja0Zvcm1h
dHRpbmdDb250ZXh0KGNvbnN0IEJveCYgZm9ybWF0dGluZ0NvbnRleHRSb290LCBCbG9ja0Zvcm1h
dHRpbmdTdGF0ZSYgZm9ybWF0dGluZ1N0YXRlKQogICAgIDogRm9ybWF0dGluZ0NvbnRleHQoZm9y
bWF0dGluZ0NvbnRleHRSb290LCBmb3JtYXR0aW5nU3RhdGUpCiB7CiB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9sYXlvdXQvYmxvY2tmb3JtYXR0aW5nL0Jsb2NrRm9ybWF0dGluZ0NvbnRl
eHQuaCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9ibG9ja2Zvcm1hdHRpbmcvQmxvY2tGb3JtYXR0
aW5nQ29udGV4dC5oCmluZGV4IDhjODM3YjBhYmZlMzNlYzY2ZjM3MDJkMTZmNjk1NmQ4ZjI3OTg4
YjMuLmEwMTEzZWNhNWVmNWQ4YmExYTVlM2E2YmI3NjNlNjRlMWVjMDZlYmMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2xheW91dC9ibG9ja2Zvcm1hdHRpbmcvQmxvY2tGb3JtYXR0aW5nQ29u
dGV4dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9ibG9ja2Zvcm1hdHRpbmcvQmxvY2tG
b3JtYXR0aW5nQ29udGV4dC5oCkBAIC00NywxMyArNDcsMTEgQEAgY2xhc3MgRmxvYXRpbmdDb250
ZXh0OwogY2xhc3MgQmxvY2tGb3JtYXR0aW5nQ29udGV4dCA6IHB1YmxpYyBGb3JtYXR0aW5nQ29u
dGV4dCB7CiAgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChCbG9ja0Zvcm1hdHRpbmdDb250ZXh0
KTsKIHB1YmxpYzoKLSAgICBCbG9ja0Zvcm1hdHRpbmdDb250ZXh0KGNvbnN0IEJveCYgZm9ybWF0
dGluZ0NvbnRleHRSb290LCBGb3JtYXR0aW5nU3RhdGUmIGZvcm1hdHRpbmdTdGF0ZSk7CisgICAg
QmxvY2tGb3JtYXR0aW5nQ29udGV4dChjb25zdCBCb3gmIGZvcm1hdHRpbmdDb250ZXh0Um9vdCwg
QmxvY2tGb3JtYXR0aW5nU3RhdGUmKTsKIAogICAgIHZvaWQgbGF5b3V0KCkgY29uc3Qgb3ZlcnJp
ZGU7CiAKIHByaXZhdGU6Ci0gICAgQmxvY2tGb3JtYXR0aW5nU3RhdGUmIGJsb2NrRm9ybWF0dGlu
Z1N0YXRlKCkgY29uc3QgeyByZXR1cm4gZG93bmNhc3Q8QmxvY2tGb3JtYXR0aW5nU3RhdGU+KGZv
cm1hdHRpbmdTdGF0ZSgpKTsgfQotCiAgICAgdm9pZCBsYXlvdXRGb3JtYXR0aW5nQ29udGV4dFJv
b3QoRmxvYXRpbmdDb250ZXh0JiwgY29uc3QgQm94JikgY29uc3Q7CiAgICAgdm9pZCBwbGFjZUlu
Rmxvd1Bvc2l0aW9uZWRDaGlsZHJlbihjb25zdCBDb250YWluZXImKSBjb25zdDsKIApAQCAtMTM3
LDYgKzEzNSw4IEBAIHByaXZhdGU6CiAgICAgYm9vbCBoYXNQcmVjb21wdXRlZE1hcmdpbkJlZm9y
ZShjb25zdCBCb3gmKSBjb25zdDsKICNlbmRpZgogCisgICAgQmxvY2tGb3JtYXR0aW5nU3RhdGUm
IGZvcm1hdHRpbmdTdGF0ZSgpIGNvbnN0IHsgcmV0dXJuIGRvd25jYXN0PEJsb2NrRm9ybWF0dGlu
Z1N0YXRlPihtX2Zvcm1hdHRpbmdTdGF0ZSk7IH0KKwogcHJpdmF0ZToKICAgICBtdXRhYmxlIEhh
c2hNYXA8Y29uc3QgQm94KiwgRXN0aW1hdGVkTWFyZ2luQmVmb3JlPiBtX2VzdGltYXRlZE1hcmdp
bkJlZm9yZUxpc3Q7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2lubGlu
ZWZvcm1hdHRpbmcvSW5saW5lRm9ybWF0dGluZ0NvbnRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUv
bGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5lRm9ybWF0dGluZ0NvbnRleHQuY3BwCmluZGV4
IDQwOGQ3ODc2YzMzMmEzYmEwMGEwY2Q0YTBkZjM5ZjRlMWVkZWRmOGEuLjk2ZjAxZWFlNDY2MDc2
ZWFjN2Y5ODE3OTI4NjMxMGJiMGU3OTJlNGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xh
eW91dC9pbmxpbmVmb3JtYXR0aW5nL0lubGluZUZvcm1hdHRpbmdDb250ZXh0LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9sYXlvdXQvaW5saW5lZm9ybWF0dGluZy9JbmxpbmVGb3JtYXR0aW5nQ29u
dGV4dC5jcHAKQEAgLTQ4LDcgKzQ4LDcgQEAgbmFtZXNwYWNlIExheW91dCB7CiAKIFdURl9NQUtF
X0lTT19BTExPQ0FURURfSU1QTChJbmxpbmVGb3JtYXR0aW5nQ29udGV4dCk7CiAKLUlubGluZUZv
cm1hdHRpbmdDb250ZXh0OjpJbmxpbmVGb3JtYXR0aW5nQ29udGV4dChjb25zdCBCb3gmIGZvcm1h
dHRpbmdDb250ZXh0Um9vdCwgRm9ybWF0dGluZ1N0YXRlJiBmb3JtYXR0aW5nU3RhdGUpCitJbmxp
bmVGb3JtYXR0aW5nQ29udGV4dDo6SW5saW5lRm9ybWF0dGluZ0NvbnRleHQoY29uc3QgQm94JiBm
b3JtYXR0aW5nQ29udGV4dFJvb3QsIElubGluZUZvcm1hdHRpbmdTdGF0ZSYgZm9ybWF0dGluZ1N0
YXRlKQogICAgIDogRm9ybWF0dGluZ0NvbnRleHQoZm9ybWF0dGluZ0NvbnRleHRSb290LCBmb3Jt
YXR0aW5nU3RhdGUpCiB7CiB9CkBAIC0xMzMsNyArMTMzLDcgQEAgdm9pZCBJbmxpbmVGb3JtYXR0
aW5nQ29udGV4dDo6c3BsaXRJbmxpbmVSdW5JZk5lZWRlZChjb25zdCBJbmxpbmVSdW4mIGlubGlu
ZVJ1biwKICAgICAvLyAxLiBTdGFydCB3aXRoIHRoZSBmaXJzdCBpbmxpbmUgaXRlbSAoZWxlbWVu
dCkgYW5kIHRyYXZlcnMgdGhlIGxpc3QgdW50aWwKICAgICAvLyAyLiBlaXRoZXIgZmluZCBhbiBp
bmxpbmUgaXRlbSB0aGF0IG5lZWRzIGEgZGVkaWNhdGVkIHJ1biBvciB3ZSByZWFjaCB0aGUgZW5k
IG9mIHRoZSBydW4KICAgICAvLyAzLiBDcmVhdGUgZGVkaWNhdGUgaW5saW5lIHJ1bnMuCi0gICAg
YXV0byYgaW5saW5lQ29udGVudCA9IGlubGluZUZvcm1hdHRpbmdTdGF0ZSgpLmlubGluZUNvbnRl
bnQoKTsKKyAgICBhdXRvJiBpbmxpbmVDb250ZW50ID0gZm9ybWF0dGluZ1N0YXRlKCkuaW5saW5l
Q29udGVudCgpOwogICAgIGF1dG8gY29udGVudFN0YXJ0ID0gaW5saW5lUnVuLmxvZ2ljYWxMZWZ0
KCk7CiAgICAgYXV0byBzdGFydFBvc2l0aW9uID0gaW5saW5lUnVuLnRleHRDb250ZXh0KCktPnN0
YXJ0KCk7CiAgICAgYXV0byByZW1hbmluZ0xlbmd0aCA9IGlubGluZVJ1bi50ZXh0Q29udGV4dCgp
LT5sZW5ndGgoKTsKQEAgLTIxNSw3ICsyMTUsNyBAQCB2b2lkIElubGluZUZvcm1hdHRpbmdDb250
ZXh0OjpzcGxpdElubGluZVJ1bklmTmVlZGVkKGNvbnN0IElubGluZVJ1biYgaW5saW5lUnVuLAog
CiB2b2lkIElubGluZUZvcm1hdHRpbmdDb250ZXh0OjpjcmVhdGVGaW5hbFJ1bnMoTGluZSYgbGlu
ZSkgY29uc3QKIHsKLSAgICBhdXRvJiBpbmxpbmVGb3JtYXR0aW5nU3RhdGUgPSB0aGlzLT5pbmxp
bmVGb3JtYXR0aW5nU3RhdGUoKTsKKyAgICBhdXRvJiBpbmxpbmVGb3JtYXR0aW5nU3RhdGUgPSBm
b3JtYXR0aW5nU3RhdGUoKTsKICAgICBmb3IgKGF1dG8mIGlubGluZVJ1biA6IGxpbmUucnVucygp
KSB7CiAgICAgICAgIGlmIChpbmxpbmVSdW4ub3ZlcmxhcHNNdWx0aXBsZUlubGluZUl0ZW1zKCkp
IHsKICAgICAgICAgICAgIElubGluZVJ1bnMgc3BsaXRSdW5zOwpAQCAtMjQ2LDcgKzI0Niw3IEBA
IHZvaWQgSW5saW5lRm9ybWF0dGluZ0NvbnRleHQ6OmNyZWF0ZUZpbmFsUnVucyhMaW5lJiBsaW5l
KSBjb25zdAogdm9pZCBJbmxpbmVGb3JtYXR0aW5nQ29udGV4dDo6cG9zdFByb2Nlc3NJbmxpbmVS
dW5zKExpbmUmIGxpbmUsIElzTGFzdExpbmUgaXNMYXN0TGluZSkgY29uc3QKIHsKICAgICBHZW9t
ZXRyeTo6YWxpZ25SdW5zKHJvb3QoKS5zdHlsZSgpLnRleHRBbGlnbigpLCBsaW5lLCBpc0xhc3RM
aW5lKTsKLSAgICBhdXRvIGZpcnN0UnVuSW5kZXggPSBpbmxpbmVGb3JtYXR0aW5nU3RhdGUoKS5p
bmxpbmVSdW5zKCkuc2l6ZSgpOworICAgIGF1dG8gZmlyc3RSdW5JbmRleCA9IGZvcm1hdHRpbmdT
dGF0ZSgpLmlubGluZVJ1bnMoKS5zaXplKCk7CiAgICAgY3JlYXRlRmluYWxSdW5zKGxpbmUpOwog
CiAgICAgcGxhY2VJbkZsb3dQb3NpdGlvbmVkQ2hpbGRyZW4oZmlyc3RSdW5JbmRleCk7CkBAIC0y
NzMsNyArMjczLDcgQEAgdm9pZCBJbmxpbmVGb3JtYXR0aW5nQ29udGV4dDo6YXBwZW5kQ29udGVu
dFRvTGluZShMaW5lJiBsaW5lLCBjb25zdCBJbmxpbmVSdW5Qcm8KIHZvaWQgSW5saW5lRm9ybWF0
dGluZ0NvbnRleHQ6OmxheW91dElubGluZUNvbnRlbnQoY29uc3QgSW5saW5lUnVuUHJvdmlkZXIm
IGlubGluZVJ1blByb3ZpZGVyKSBjb25zdAogewogICAgIGF1dG8mIGxheW91dFN0YXRlID0gdGhp
cy0+bGF5b3V0U3RhdGUoKTsKLSAgICBhdXRvJiBpbmxpbmVGb3JtYXR0aW5nU3RhdGUgPSB0aGlz
LT5pbmxpbmVGb3JtYXR0aW5nU3RhdGUoKTsKKyAgICBhdXRvJiBpbmxpbmVGb3JtYXR0aW5nU3Rh
dGUgPSBmb3JtYXR0aW5nU3RhdGUoKTsKICAgICBhdXRvIGZsb2F0aW5nQ29udGV4dCA9IEZsb2F0
aW5nQ29udGV4dCB7IGlubGluZUZvcm1hdHRpbmdTdGF0ZS5mbG9hdGluZ1N0YXRlKCkgfTsKIAog
ICAgIExpbmUgbGluZTsKQEAgLTQwOCw3ICs0MDgsNyBAQCB2b2lkIElubGluZUZvcm1hdHRpbmdD
b250ZXh0Ojpjb21wdXRlRmxvYXRQb3NpdGlvbihjb25zdCBGbG9hdGluZ0NvbnRleHQmIGZsb2F0
aQogCiB2b2lkIElubGluZUZvcm1hdHRpbmdDb250ZXh0OjpwbGFjZUluRmxvd1Bvc2l0aW9uZWRD
aGlsZHJlbih1bnNpZ25lZCBmaXN0UnVuSW5kZXgpIGNvbnN0CiB7Ci0gICAgYXV0byYgaW5saW5l
UnVucyA9IGlubGluZUZvcm1hdHRpbmdTdGF0ZSgpLmlubGluZVJ1bnMoKTsKKyAgICBhdXRvJiBp
bmxpbmVSdW5zID0gZm9ybWF0dGluZ1N0YXRlKCkuaW5saW5lUnVucygpOwogICAgIGZvciAoYXV0
byBydW5JbmRleCA9IGZpc3RSdW5JbmRleDsgcnVuSW5kZXggPCBpbmxpbmVSdW5zLnNpemUoKTsg
KytydW5JbmRleCkgewogICAgICAgICBhdXRvJiBpbmxpbmVSdW4gPSBpbmxpbmVSdW5zW3J1bklu
ZGV4XTsKIApAQCAtNDMzLDcgKzQzMyw3IEBAIHZvaWQgSW5saW5lRm9ybWF0dGluZ0NvbnRleHQ6
OnBsYWNlSW5GbG93UG9zaXRpb25lZENoaWxkcmVuKHVuc2lnbmVkIGZpc3RSdW5JbmRlCiB2b2lk
IElubGluZUZvcm1hdHRpbmdDb250ZXh0Ojpjb2xsZWN0SW5saW5lQ29udGVudEZvclN1YnRyZWUo
Y29uc3QgQm94JiByb290LCBJbmxpbmVSdW5Qcm92aWRlciYgaW5saW5lUnVuUHJvdmlkZXIpIGNv
bnN0CiB7CiAgICAgLy8gQ29sbGVjdCBpbmxpbmUgY29udGVudCByZWN1cnNpdmVseSBhbmQgc2V0
IGJyZWFraW5nIHJ1bGVzIGZvciB0aGUgaW5saW5lIGVsZW1lbnRzIChmb3IgcGFkZGluZ3MsIG1h
cmdpbnMsIHBvc2l0aW9uZWQgZWxlbWVudCBldGMpLgotICAgIGF1dG8mIGlubGluZUZvcm1hdHRp
bmdTdGF0ZSA9IHRoaXMtPmlubGluZUZvcm1hdHRpbmdTdGF0ZSgpOworICAgIGF1dG8mIGlubGlu
ZUZvcm1hdHRpbmdTdGF0ZSA9IGZvcm1hdHRpbmdTdGF0ZSgpOwogCiAgICAgYXV0byBjcmVhdGVB
bmRBcHBlbmRJbmxpbmVJdGVtID0gWyZdIHsKICAgICAgICAgYXV0byBpbmxpbmVJdGVtID0gc3Rk
OjptYWtlX3VuaXF1ZTxJbmxpbmVJdGVtPihyb290KTsKQEAgLTUyOCw3ICs1MjgsNyBAQCBGb3Jt
YXR0aW5nQ29udGV4dDo6SW5zdHJpbnNpY1dpZHRoQ29uc3RyYWludHMgSW5saW5lRm9ybWF0dGlu
Z0NvbnRleHQ6Omluc3RyaW5zaQogICAgIGlmIChhdXRvIGluc3RyaW5zaWNXaWR0aENvbnN0cmFp
bnRzID0gZm9ybWF0dGluZ1N0YXRlRm9yUm9vdC5pbnN0cmluc2ljV2lkdGhDb25zdHJhaW50cyhy
b290KCkpKQogICAgICAgICByZXR1cm4gKmluc3RyaW5zaWNXaWR0aENvbnN0cmFpbnRzOwogCi0g
ICAgYXV0byYgaW5saW5lRm9ybWF0dGluZ1N0YXRlID0gdGhpcy0+aW5saW5lRm9ybWF0dGluZ1N0
YXRlKCk7CisgICAgYXV0byYgaW5saW5lRm9ybWF0dGluZ1N0YXRlID0gZm9ybWF0dGluZ1N0YXRl
KCk7CiAgICAgSW5saW5lUnVuUHJvdmlkZXIgaW5saW5lUnVuUHJvdmlkZXI7CiAgICAgY29sbGVj
dElubGluZUNvbnRlbnQoaW5saW5lUnVuUHJvdmlkZXIpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvaW5saW5lZm9ybWF0dGluZy9JbmxpbmVGb3JtYXR0aW5nQ29udGV4dC5o
IGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5lRm9ybWF0dGlu
Z0NvbnRleHQuaAppbmRleCA0MDEwZmZkMDRlNmE2ODQ4ZDhkOGU3ZTk3NTg2MmQ4ZWM5NzY3MjNj
Li41YTdlOTE0MDE5NmI5ZGZjZTg1OWIxODM3NDAzMTFiNGY5NzBmN2IwIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sYXlvdXQvaW5saW5lZm9ybWF0dGluZy9JbmxpbmVGb3JtYXR0aW5nQ29u
dGV4dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbmxpbmVmb3JtYXR0aW5nL0lubGlu
ZUZvcm1hdHRpbmdDb250ZXh0LmgKQEAgLTQzLDcgKzQzLDcgQEAgY2xhc3MgSW5saW5lUnVuUHJv
dmlkZXI7CiBjbGFzcyBJbmxpbmVGb3JtYXR0aW5nQ29udGV4dCA6IHB1YmxpYyBGb3JtYXR0aW5n
Q29udGV4dCB7CiAgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChJbmxpbmVGb3JtYXR0aW5nQ29u
dGV4dCk7CiBwdWJsaWM6Ci0gICAgSW5saW5lRm9ybWF0dGluZ0NvbnRleHQoY29uc3QgQm94JiBm
b3JtYXR0aW5nQ29udGV4dFJvb3QsIEZvcm1hdHRpbmdTdGF0ZSYpOworICAgIElubGluZUZvcm1h
dHRpbmdDb250ZXh0KGNvbnN0IEJveCYgZm9ybWF0dGluZ0NvbnRleHRSb290LCBJbmxpbmVGb3Jt
YXR0aW5nU3RhdGUmKTsKIAogICAgIHZvaWQgbGF5b3V0KCkgY29uc3Qgb3ZlcnJpZGU7CiAKQEAg
LTEyMSw3ICsxMjEsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgY29sbGVjdElubGluZUNvbnRlbnRG
b3JTdWJ0cmVlKGNvbnN0IEJveCYgcm9vdCwgSW5saW5lUnVuUHJvdmlkZXImKSBjb25zdDsKICAg
ICBJbnN0cmluc2ljV2lkdGhDb25zdHJhaW50cyBpbnN0cmluc2ljV2lkdGhDb25zdHJhaW50cygp
IGNvbnN0IG92ZXJyaWRlOwogCi0gICAgSW5saW5lRm9ybWF0dGluZ1N0YXRlJiBpbmxpbmVGb3Jt
YXR0aW5nU3RhdGUoKSBjb25zdCB7IHJldHVybiBkb3duY2FzdDxJbmxpbmVGb3JtYXR0aW5nU3Rh
dGU+KGZvcm1hdHRpbmdTdGF0ZSgpKTsgfQorICAgIElubGluZUZvcm1hdHRpbmdTdGF0ZSYgZm9y
bWF0dGluZ1N0YXRlKCkgY29uc3QgeyByZXR1cm4gZG93bmNhc3Q8SW5saW5lRm9ybWF0dGluZ1N0
YXRlPihtX2Zvcm1hdHRpbmdTdGF0ZSk7IH0KIH07CiAKIH0K
</data>
<flag name="review"
          id="375800"
          type_id="1"
          status="+"
          setter="koivisto"
    />
          </attachment>
      

    </bug>

</bugzilla>