<?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>225424</bug_id>
          
          <creation_ts>2021-05-05 17:07:16 -0700</creation_ts>
          <short_desc>DisplayList::Recorder::canAppendItemOfType shouldn&apos;t be responsible for appending context state change items</short_desc>
          <delta_ts>2021-05-06 01:53:13 -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 Local 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="Cameron McCormack (:heycam)">heycam</reporter>
          <assigned_to name="Cameron McCormack (:heycam)">heycam</assigned_to>
          <cc>bfulgham</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>1757180</commentid>
    <comment_count>0</comment_count>
    <who name="Cameron McCormack (:heycam)">heycam</who>
    <bug_when>2021-05-05 17:07:16 -0700</bug_when>
    <thetext>It&apos;s non-obvious from the name that canAppendItemOfType can also end up appending an item.  So let&apos;s split out the context state change item out into a separate function.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1757185</commentid>
    <comment_count>1</comment_count>
      <attachid>427824</attachid>
    <who name="Cameron McCormack (:heycam)">heycam</who>
    <bug_when>2021-05-05 17:16:09 -0700</bug_when>
    <thetext>Created attachment 427824
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1757233</commentid>
    <comment_count>2</comment_count>
      <attachid>427824</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2021-05-05 20:01:55 -0700</bug_when>
    <thetext>Comment on attachment 427824
Patch

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

&gt; Source/WebCore/platform/graphics/displaylists/DisplayListRecorder.cpp:124
&gt;  bool Recorder::canAppendItemOfType(ItemType type)

This function can now be const.

&gt; Source/WebCore/platform/graphics/displaylists/DisplayListRecorder.cpp:129
&gt; +void Recorder::appendStateChangeItemIfStateHasChanged()

Usually we say &quot;IfNecessary&quot;

&gt; Source/WebCore/platform/graphics/displaylists/DisplayListRecorder.cpp:131
&gt; +    GraphicsContextStateChange&amp; stateChanges = currentState().stateChange;

auto&amp;

&gt; Source/WebCore/platform/graphics/displaylists/DisplayListRecorder.cpp:132
&gt; +    GraphicsContextState::StateChangeFlags changesFromLastState = stateChanges.changesFromState(currentState().lastDrawingState);

auto</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1757269</commentid>
    <comment_count>3</comment_count>
      <attachid>427855</attachid>
    <who name="Cameron McCormack (:heycam)">heycam</who>
    <bug_when>2021-05-06 00:33:38 -0700</bug_when>
    <thetext>Created attachment 427855
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1757301</commentid>
    <comment_count>4</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-05-06 01:53:00 -0700</bug_when>
    <thetext>Committed r277075 (237378@main): &lt;https://commits.webkit.org/237378@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 427855.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1757302</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-05-06 01:53:13 -0700</bug_when>
    <thetext>&lt;rdar://problem/77598075&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>427824</attachid>
            <date>2021-05-05 17:16:09 -0700</date>
            <delta_ts>2021-05-06 00:33:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225424-20210506101607.patch</filename>
            <type>text/plain</type>
            <size>5180</size>
            <attacher name="Cameron McCormack (:heycam)">heycam</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2OTg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZWNkNTE2YzdjMmJjNWEz
YTUwODFhOWJiZGJkZDQwODdmY2I5Yjg0NC4uNGE2OGQwYWRmODQ4NDgyZDhhYzM1ODljMmQwNGZk
MmNiN2RkMjc0ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDIxLTA1LTA0ICBDYW1l
cm9uIE1jQ29ybWFjayAgPGhleWNhbUBhcHBsZS5jb20+CisKKyAgICAgICAgU3BsaXQgY29udGV4
dCBzdGF0ZSBjaGFuZ2UgaXRlbSBhcHBlbmRpbmcgb3V0IG9mIERpc3BsYXlMaXN0OjpSZWNvcmRl
cjo6Y2FuQXBwZW5kSXRlbU9mVHlwZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIyNTQyNAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEl0J3Mgbm9uLW9idmlvdXMgZnJvbSB0aGUgbmFtZSB0aGF0IGNhbkFw
cGVuZEl0ZW1PZlR5cGUgY2FuIGFsc28gZW5kCisgICAgICAgIHVwIGFwcGVuZGluZyBhbiBpdGVt
LiAgU28gbGV0J3Mgc3BsaXQgb3V0IHRoZSBjb250ZXh0IHN0YXRlIGNoYW5nZQorICAgICAgICBp
dGVtIG91dCBpbnRvIGEgc2VwYXJhdGUgZnVuY3Rpb24uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpEaXNwbGF5TGlzdDo6UmVjb3JkZXI6OmNhbkFwcGVuZEl0ZW1PZlR5cGUpOgorICAg
ICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OlJlY29yZGVyOjphcHBlbmRTdGF0ZUNoYW5nZUl0
ZW1JZlN0YXRlSGFzQ2hhbmdlZCk6CisgICAgICAgIEFkZGVkLgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlY29yZGVyLmg6CisgICAgICAgIChX
ZWJDb3JlOjpEaXNwbGF5TGlzdDo6UmVjb3JkZXI6OmFwcGVuZCk6CisgICAgICAgIChXZWJDb3Jl
OjpEaXNwbGF5TGlzdDo6UmVjb3JkZXI6Oml0ZW1OZWVkc1N0YXRlKTogQWRkZWQgdGhpcyBhcyBh
CisgICAgICAgIGNvbnN0ZXhwciBoZWxwZXIgZnVuY3Rpb24sIHRvIGVuc3VyZSB3ZSBtYWtlIGEg
ZGVjaXNpb24gYWJvdXQgbmVlZGluZworICAgICAgICB0byBjYWxsIGFwcGVuZFN0YXRlQ2hhbmdl
SXRlbUlmTmVlZGVkIGF0IGNvbXBpbGUgdGltZS4KKwogMjAyMS0wNS0wNCAgQ2FtZXJvbiBNY0Nv
cm1hY2sgIDxoZXljYW1AYXBwbGUuY29tPgogCiAgICAgICAgIFJlbmFtZSBEaXNwbGF5TGlzdDo6
UmVjb3JkZXI6OmFwcGVuZERyYXdHcmFwaHNJdGVtV2l0aENhY2hlZEZvbnQuCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxp
c3RSZWNvcmRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5
bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlci5jcHAKaW5kZXggMjhjYjliZTIyM2I4NjQ2NTdlMTNh
MDA2NDA2MGY4ZWYzM2JmODc1Yi4uM2VmM2JkZDc4NmQ0OWY5NjgwYjI3ZGYzZjU2NjdjNzNlNjZh
MjdiYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxh
eWxpc3RzL0Rpc3BsYXlMaXN0UmVjb3JkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlY29yZGVyLmNwcApAQCAtMTIz
LDI1ICsxMjMsMjAgQEAgdm9pZCBSZWNvcmRlcjo6YXBwZW5kU3RhdGVDaGFuZ2VJdGVtKGNvbnN0
IEdyYXBoaWNzQ29udGV4dFN0YXRlQ2hhbmdlJiBjaGFuZ2VzLAogCiBib29sIFJlY29yZGVyOjpj
YW5BcHBlbmRJdGVtT2ZUeXBlKEl0ZW1UeXBlIHR5cGUpCiB7Ci0gICAgaWYgKG1fZGVsZWdhdGUg
JiYgIW1fZGVsZWdhdGUtPmNhbkFwcGVuZEl0ZW1PZlR5cGUodHlwZSkpCi0gICAgICAgIHJldHVy
biBmYWxzZTsKKyAgICByZXR1cm4gIW1fZGVsZWdhdGUgfHwgbV9kZWxlZ2F0ZS0+Y2FuQXBwZW5k
SXRlbU9mVHlwZSh0eXBlKTsKK30KIAotICAgIGlmIChpc0RyYXdpbmdJdGVtKHR5cGUpCi0jaWYg
VVNFKENHKQotICAgICAgICB8fCB0eXBlID09IEl0ZW1UeXBlOjpBcHBseUZpbGxQYXR0ZXJuIHx8
IHR5cGUgPT0gSXRlbVR5cGU6OkFwcGx5U3Ryb2tlUGF0dGVybgotI2VuZGlmCi0gICAgKSB7Ci0g
ICAgICAgIEdyYXBoaWNzQ29udGV4dFN0YXRlQ2hhbmdlJiBzdGF0ZUNoYW5nZXMgPSBjdXJyZW50
U3RhdGUoKS5zdGF0ZUNoYW5nZTsKLSAgICAgICAgR3JhcGhpY3NDb250ZXh0U3RhdGU6OlN0YXRl
Q2hhbmdlRmxhZ3MgY2hhbmdlc0Zyb21MYXN0U3RhdGUgPSBzdGF0ZUNoYW5nZXMuY2hhbmdlc0Zy
b21TdGF0ZShjdXJyZW50U3RhdGUoKS5sYXN0RHJhd2luZ1N0YXRlKTsKLSAgICAgICAgaWYgKGNo
YW5nZXNGcm9tTGFzdFN0YXRlKSB7Ci0gICAgICAgICAgICBMT0dfV0lUSF9TVFJFQU0oRGlzcGxh
eUxpc3RzLCBzdHJlYW0gPDwgInByZS1kcmF3aW5nLCBzYXZpbmcgc3RhdGUgIiA8PCBHcmFwaGlj
c0NvbnRleHRTdGF0ZUNoYW5nZShzdGF0ZUNoYW5nZXMubV9zdGF0ZSwgY2hhbmdlc0Zyb21MYXN0
U3RhdGUpKTsKLSAgICAgICAgICAgIGFwcGVuZFN0YXRlQ2hhbmdlSXRlbShzdGF0ZUNoYW5nZXMs
IGNoYW5nZXNGcm9tTGFzdFN0YXRlKTsKLSAgICAgICAgICAgIHN0YXRlQ2hhbmdlcy5tX2NoYW5n
ZUZsYWdzID0geyB9OwotICAgICAgICAgICAgY3VycmVudFN0YXRlKCkubGFzdERyYXdpbmdTdGF0
ZSA9IHN0YXRlQ2hhbmdlcy5tX3N0YXRlOwotICAgICAgICB9Ci0gICAgfQordm9pZCBSZWNvcmRl
cjo6YXBwZW5kU3RhdGVDaGFuZ2VJdGVtSWZTdGF0ZUhhc0NoYW5nZWQoKQoreworICAgIEdyYXBo
aWNzQ29udGV4dFN0YXRlQ2hhbmdlJiBzdGF0ZUNoYW5nZXMgPSBjdXJyZW50U3RhdGUoKS5zdGF0
ZUNoYW5nZTsKKyAgICBHcmFwaGljc0NvbnRleHRTdGF0ZTo6U3RhdGVDaGFuZ2VGbGFncyBjaGFu
Z2VzRnJvbUxhc3RTdGF0ZSA9IHN0YXRlQ2hhbmdlcy5jaGFuZ2VzRnJvbVN0YXRlKGN1cnJlbnRT
dGF0ZSgpLmxhc3REcmF3aW5nU3RhdGUpOworICAgIGlmICghY2hhbmdlc0Zyb21MYXN0U3RhdGUp
CisgICAgICAgIHJldHVybjsKIAotICAgIHJldHVybiB0cnVlOworICAgIExPR19XSVRIX1NUUkVB
TShEaXNwbGF5TGlzdHMsIHN0cmVhbSA8PCAicHJlLWRyYXdpbmcsIHNhdmluZyBzdGF0ZSAiIDw8
IEdyYXBoaWNzQ29udGV4dFN0YXRlQ2hhbmdlKHN0YXRlQ2hhbmdlcy5tX3N0YXRlLCBjaGFuZ2Vz
RnJvbUxhc3RTdGF0ZSkpOworICAgIGFwcGVuZFN0YXRlQ2hhbmdlSXRlbShzdGF0ZUNoYW5nZXMs
IGNoYW5nZXNGcm9tTGFzdFN0YXRlKTsKKyAgICBzdGF0ZUNoYW5nZXMubV9jaGFuZ2VGbGFncyA9
IHsgfTsKKyAgICBjdXJyZW50U3RhdGUoKS5sYXN0RHJhd2luZ1N0YXRlID0gc3RhdGVDaGFuZ2Vz
Lm1fc3RhdGU7CiB9CiAKIHZvaWQgUmVjb3JkZXI6OnVwZGF0ZVN0YXRlKGNvbnN0IEdyYXBoaWNz
Q29udGV4dFN0YXRlJiBzdGF0ZSwgR3JhcGhpY3NDb250ZXh0U3RhdGU6OlN0YXRlQ2hhbmdlRmxh
Z3MgZmxhZ3MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9k
aXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0UmVjb3JkZXIuaAppbmRleCBlYjcy
NTE4OWFkNGI1NWZlYmMyNzgyNDRmNjFmNGU3MmRkMzUwYTNmLi44Nzc1M2Y1ODcyY2Y5YjY0Y2E1
YjYwMTllMzBmZDU3NzhkNzk2NTY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlci5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlY29y
ZGVyLmgKQEAgLTE2MCw2ICsxNjAsOSBAQCBwcml2YXRlOgogICAgICAgICBpZiAoVU5MSUtFTFko
IWNhbkFwcGVuZEl0ZW1PZlR5cGUoVDo6aXRlbVR5cGUpKSkKICAgICAgICAgICAgIHJldHVybjsK
IAorICAgICAgICBpZiBjb25zdGV4cHIgKGl0ZW1OZWVkc1N0YXRlPFQ+KCkpCisgICAgICAgICAg
ICBhcHBlbmRTdGF0ZUNoYW5nZUl0ZW1JZlN0YXRlSGFzQ2hhbmdlZCgpOworCiAgICAgICAgIG1f
ZGlzcGxheUxpc3QuYXBwZW5kPFQ+KHN0ZDo6Zm9yd2FyZDxBcmdzPihhcmdzKS4uLik7CiAKICAg
ICAgICAgaWYgY29uc3RleHByIChUOjppc0RyYXdpbmdJdGVtKSB7CkBAIC0xNzgsOCArMTgxLDEy
IEBAIHByaXZhdGU6CiAKICAgICBXRUJDT1JFX0VYUE9SVCBib29sIGNhbkFwcGVuZEl0ZW1PZlR5
cGUoSXRlbVR5cGUpOwogCisgICAgdGVtcGxhdGU8dHlwZW5hbWUgVD4KKyAgICBzdGF0aWMgY29u
c3RleHByIGJvb2wgaXRlbU5lZWRzU3RhdGUoKTsKKwogICAgIHZvaWQgY2FjaGVOYXRpdmVJbWFn
ZShOYXRpdmVJbWFnZSYpOwogCisgICAgdm9pZCBhcHBlbmRTdGF0ZUNoYW5nZUl0ZW1JZlN0YXRl
SGFzQ2hhbmdlZCgpOwogICAgIHZvaWQgYXBwZW5kU3RhdGVDaGFuZ2VJdGVtKGNvbnN0IEdyYXBo
aWNzQ29udGV4dFN0YXRlQ2hhbmdlJiwgR3JhcGhpY3NDb250ZXh0U3RhdGU6OlN0YXRlQ2hhbmdl
RmxhZ3MpOwogCiAgICAgRmxvYXRSZWN0IGV4dGVudEZyb21Mb2NhbEJvdW5kcyhjb25zdCBGbG9h
dFJlY3QmKSBjb25zdDsKQEAgLTIzMiw2ICsyMzksMjAgQEAgcHJpdmF0ZToKICAgICBEcmF3R2x5
cGhzUmVjb3JkZXIgbV9kcmF3R2x5cGhzUmVjb3JkZXI7CiB9OwogCit0ZW1wbGF0ZTx0eXBlbmFt
ZSBUPgorY29uc3RleHByIGJvb2wgUmVjb3JkZXI6Oml0ZW1OZWVkc1N0YXRlKCkKK3sKKyAgICBp
ZiAoVDo6aXNEcmF3aW5nSXRlbSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyNpZiBVU0UoQ0cp
CisgICAgaWYgKFQ6Oml0ZW1UeXBlID09IEl0ZW1UeXBlOjpBcHBseUZpbGxQYXR0ZXJuIHx8IFQ6
Oml0ZW1UeXBlID09IEl0ZW1UeXBlOjpBcHBseVN0cm9rZVBhdHRlcm4pCisgICAgICAgIHJldHVy
biB0cnVlOworI2VuZGlmCisKKyAgICByZXR1cm4gZmFsc2U7Cit9CisKIH0KIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>427855</attachid>
            <date>2021-05-06 00:33:38 -0700</date>
            <delta_ts>2021-05-06 01:53:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225424-20210506173337.patch</filename>
            <type>text/plain</type>
            <size>5357</size>
            <attacher name="Cameron McCormack (:heycam)">heycam</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2OTg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZWNkNTE2YzdjMmJjNWEz
YTUwODFhOWJiZGJkZDQwODdmY2I5Yjg0NC4uNDI1NzA3ZjdhYmJiN2Y0ZmIwN2VmNWZmYTkwNzcy
YTM5OTJjMWIyNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDIxLTA1LTA0ICBDYW1l
cm9uIE1jQ29ybWFjayAgPGhleWNhbUBhcHBsZS5jb20+CisKKyAgICAgICAgU3BsaXQgY29udGV4
dCBzdGF0ZSBjaGFuZ2UgaXRlbSBhcHBlbmRpbmcgb3V0IG9mIERpc3BsYXlMaXN0OjpSZWNvcmRl
cjo6Y2FuQXBwZW5kSXRlbU9mVHlwZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIyNTQyNAorCisgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNl
ci4KKworICAgICAgICBJdCdzIG5vbi1vYnZpb3VzIGZyb20gdGhlIG5hbWUgdGhhdCBjYW5BcHBl
bmRJdGVtT2ZUeXBlIGNhbiBhbHNvIGVuZAorICAgICAgICB1cCBhcHBlbmRpbmcgYW4gaXRlbS4g
IFNvIGxldCdzIHNwbGl0IG91dCB0aGUgY29udGV4dCBzdGF0ZSBjaGFuZ2UKKyAgICAgICAgaXRl
bSBvdXQgaW50byBhIHNlcGFyYXRlIGZ1bmN0aW9uLgorCisgICAgICAgICogcGxhdGZvcm0vZ3Jh
cGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0UmVjb3JkZXIuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6RGlzcGxheUxpc3Q6OlJlY29yZGVyOjpjYW5BcHBlbmRJdGVtT2ZUeXBlKToKKyAgICAg
ICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpSZWNvcmRlcjo6YXBwZW5kU3RhdGVDaGFuZ2VJdGVt
SWZOZWNlc3NhcnkpOgorICAgICAgICBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlci5oOgorICAgICAgICAoV2ViQ29yZTo6
RGlzcGxheUxpc3Q6OlJlY29yZGVyOjphcHBlbmQpOgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxh
eUxpc3Q6OlJlY29yZGVyOjppdGVtTmVlZHNTdGF0ZSk6IEFkZGVkIHRoaXMgYXMgYQorICAgICAg
ICBjb25zdGV4cHIgaGVscGVyIGZ1bmN0aW9uLCB0byBlbnN1cmUgd2UgbWFrZSBhIGRlY2lzaW9u
IGFib3V0IG5lZWRpbmcKKyAgICAgICAgdG8gY2FsbCBhcHBlbmRTdGF0ZUNoYW5nZUl0ZW1JZk5l
Y2Vzc2FyeSBhdCBjb21waWxlIHRpbWUuCisKIDIwMjEtMDUtMDQgIENhbWVyb24gTWNDb3JtYWNr
ICA8aGV5Y2FtQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW5hbWUgRGlzcGxheUxpc3Q6OlJlY29y
ZGVyOjphcHBlbmREcmF3R3JhcGhzSXRlbVdpdGhDYWNoZWRGb250LgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0UmVj
b3JkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3Rz
L0Rpc3BsYXlMaXN0UmVjb3JkZXIuY3BwCmluZGV4IDI4Y2I5YmUyMjNiODY0NjU3ZTEzYTAwNjQw
NjBmOGVmMzNiZjg3NWIuLjYzYjE3ZWNhNDNiNGUzMDZmMDBkNzQzOTUzZGE3MDE2NDk5YjlmYTcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0
cy9EaXNwbGF5TGlzdFJlY29yZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlci5jcHAKQEAgLTEyMSwyNyAr
MTIxLDIyIEBAIHZvaWQgUmVjb3JkZXI6OmFwcGVuZFN0YXRlQ2hhbmdlSXRlbShjb25zdCBHcmFw
aGljc0NvbnRleHRTdGF0ZUNoYW5nZSYgY2hhbmdlcywKICAgICAgICAgYXBwZW5kPFNldElubGlu
ZUZpbGxHcmFkaWVudD4oKmNoYW5nZXMubV9zdGF0ZS5maWxsR3JhZGllbnQsIGNoYW5nZXMubV9z
dGF0ZS5maWxsR3JhZGllbnRTcGFjZVRyYW5zZm9ybSk7CiB9CiAKLWJvb2wgUmVjb3JkZXI6OmNh
bkFwcGVuZEl0ZW1PZlR5cGUoSXRlbVR5cGUgdHlwZSkKK2Jvb2wgUmVjb3JkZXI6OmNhbkFwcGVu
ZEl0ZW1PZlR5cGUoSXRlbVR5cGUgdHlwZSkgY29uc3QKIHsKLSAgICBpZiAobV9kZWxlZ2F0ZSAm
JiAhbV9kZWxlZ2F0ZS0+Y2FuQXBwZW5kSXRlbU9mVHlwZSh0eXBlKSkKLSAgICAgICAgcmV0dXJu
IGZhbHNlOworICAgIHJldHVybiAhbV9kZWxlZ2F0ZSB8fCBtX2RlbGVnYXRlLT5jYW5BcHBlbmRJ
dGVtT2ZUeXBlKHR5cGUpOworfQogCi0gICAgaWYgKGlzRHJhd2luZ0l0ZW0odHlwZSkKLSNpZiBV
U0UoQ0cpCi0gICAgICAgIHx8IHR5cGUgPT0gSXRlbVR5cGU6OkFwcGx5RmlsbFBhdHRlcm4gfHwg
dHlwZSA9PSBJdGVtVHlwZTo6QXBwbHlTdHJva2VQYXR0ZXJuCi0jZW5kaWYKLSAgICApIHsKLSAg
ICAgICAgR3JhcGhpY3NDb250ZXh0U3RhdGVDaGFuZ2UmIHN0YXRlQ2hhbmdlcyA9IGN1cnJlbnRT
dGF0ZSgpLnN0YXRlQ2hhbmdlOwotICAgICAgICBHcmFwaGljc0NvbnRleHRTdGF0ZTo6U3RhdGVD
aGFuZ2VGbGFncyBjaGFuZ2VzRnJvbUxhc3RTdGF0ZSA9IHN0YXRlQ2hhbmdlcy5jaGFuZ2VzRnJv
bVN0YXRlKGN1cnJlbnRTdGF0ZSgpLmxhc3REcmF3aW5nU3RhdGUpOwotICAgICAgICBpZiAoY2hh
bmdlc0Zyb21MYXN0U3RhdGUpIHsKLSAgICAgICAgICAgIExPR19XSVRIX1NUUkVBTShEaXNwbGF5
TGlzdHMsIHN0cmVhbSA8PCAicHJlLWRyYXdpbmcsIHNhdmluZyBzdGF0ZSAiIDw8IEdyYXBoaWNz
Q29udGV4dFN0YXRlQ2hhbmdlKHN0YXRlQ2hhbmdlcy5tX3N0YXRlLCBjaGFuZ2VzRnJvbUxhc3RT
dGF0ZSkpOwotICAgICAgICAgICAgYXBwZW5kU3RhdGVDaGFuZ2VJdGVtKHN0YXRlQ2hhbmdlcywg
Y2hhbmdlc0Zyb21MYXN0U3RhdGUpOwotICAgICAgICAgICAgc3RhdGVDaGFuZ2VzLm1fY2hhbmdl
RmxhZ3MgPSB7IH07Ci0gICAgICAgICAgICBjdXJyZW50U3RhdGUoKS5sYXN0RHJhd2luZ1N0YXRl
ID0gc3RhdGVDaGFuZ2VzLm1fc3RhdGU7Ci0gICAgICAgIH0KLSAgICB9Cit2b2lkIFJlY29yZGVy
OjphcHBlbmRTdGF0ZUNoYW5nZUl0ZW1JZk5lY2Vzc2FyeSgpCit7CisgICAgYXV0byYgc3RhdGVD
aGFuZ2VzID0gY3VycmVudFN0YXRlKCkuc3RhdGVDaGFuZ2U7CisgICAgYXV0byBjaGFuZ2VzRnJv
bUxhc3RTdGF0ZSA9IHN0YXRlQ2hhbmdlcy5jaGFuZ2VzRnJvbVN0YXRlKGN1cnJlbnRTdGF0ZSgp
Lmxhc3REcmF3aW5nU3RhdGUpOworICAgIGlmICghY2hhbmdlc0Zyb21MYXN0U3RhdGUpCisgICAg
ICAgIHJldHVybjsKIAotICAgIHJldHVybiB0cnVlOworICAgIExPR19XSVRIX1NUUkVBTShEaXNw
bGF5TGlzdHMsIHN0cmVhbSA8PCAicHJlLWRyYXdpbmcsIHNhdmluZyBzdGF0ZSAiIDw8IEdyYXBo
aWNzQ29udGV4dFN0YXRlQ2hhbmdlKHN0YXRlQ2hhbmdlcy5tX3N0YXRlLCBjaGFuZ2VzRnJvbUxh
c3RTdGF0ZSkpOworICAgIGFwcGVuZFN0YXRlQ2hhbmdlSXRlbShzdGF0ZUNoYW5nZXMsIGNoYW5n
ZXNGcm9tTGFzdFN0YXRlKTsKKyAgICBzdGF0ZUNoYW5nZXMubV9jaGFuZ2VGbGFncyA9IHsgfTsK
KyAgICBjdXJyZW50U3RhdGUoKS5sYXN0RHJhd2luZ1N0YXRlID0gc3RhdGVDaGFuZ2VzLm1fc3Rh
dGU7CiB9CiAKIHZvaWQgUmVjb3JkZXI6OnVwZGF0ZVN0YXRlKGNvbnN0IEdyYXBoaWNzQ29udGV4
dFN0YXRlJiBzdGF0ZSwgR3JhcGhpY3NDb250ZXh0U3RhdGU6OlN0YXRlQ2hhbmdlRmxhZ3MgZmxh
Z3MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5
bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0UmVjb3JkZXIuaAppbmRleCBlYjcyNTE4OWFk
NGI1NWZlYmMyNzgyNDRmNjFmNGU3MmRkMzUwYTNmLi4wNjUwNTA2YmM5NGNhM2NmYTgwYTY0NDE2
MWIxZDA0M2IzYTkwNjNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlci5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlY29yZGVyLmgK
QEAgLTE2MCw2ICsxNjAsOSBAQCBwcml2YXRlOgogICAgICAgICBpZiAoVU5MSUtFTFkoIWNhbkFw
cGVuZEl0ZW1PZlR5cGUoVDo6aXRlbVR5cGUpKSkKICAgICAgICAgICAgIHJldHVybjsKIAorICAg
ICAgICBpZiBjb25zdGV4cHIgKGl0ZW1OZWVkc1N0YXRlPFQ+KCkpCisgICAgICAgICAgICBhcHBl
bmRTdGF0ZUNoYW5nZUl0ZW1JZk5lY2Vzc2FyeSgpOworCiAgICAgICAgIG1fZGlzcGxheUxpc3Qu
YXBwZW5kPFQ+KHN0ZDo6Zm9yd2FyZDxBcmdzPihhcmdzKS4uLik7CiAKICAgICAgICAgaWYgY29u
c3RleHByIChUOjppc0RyYXdpbmdJdGVtKSB7CkBAIC0xNzYsMTAgKzE3OSwxNCBAQCBwcml2YXRl
OgogICAgICAgICB9CiAgICAgfQogCi0gICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBjYW5BcHBlbmRJ
dGVtT2ZUeXBlKEl0ZW1UeXBlKTsKKyAgICBXRUJDT1JFX0VYUE9SVCBib29sIGNhbkFwcGVuZEl0
ZW1PZlR5cGUoSXRlbVR5cGUpIGNvbnN0OworCisgICAgdGVtcGxhdGU8dHlwZW5hbWUgVD4KKyAg
ICBzdGF0aWMgY29uc3RleHByIGJvb2wgaXRlbU5lZWRzU3RhdGUoKTsKIAogICAgIHZvaWQgY2Fj
aGVOYXRpdmVJbWFnZShOYXRpdmVJbWFnZSYpOwogCisgICAgdm9pZCBhcHBlbmRTdGF0ZUNoYW5n
ZUl0ZW1JZk5lY2Vzc2FyeSgpOwogICAgIHZvaWQgYXBwZW5kU3RhdGVDaGFuZ2VJdGVtKGNvbnN0
IEdyYXBoaWNzQ29udGV4dFN0YXRlQ2hhbmdlJiwgR3JhcGhpY3NDb250ZXh0U3RhdGU6OlN0YXRl
Q2hhbmdlRmxhZ3MpOwogCiAgICAgRmxvYXRSZWN0IGV4dGVudEZyb21Mb2NhbEJvdW5kcyhjb25z
dCBGbG9hdFJlY3QmKSBjb25zdDsKQEAgLTIzMiw2ICsyMzksMjAgQEAgcHJpdmF0ZToKICAgICBE
cmF3R2x5cGhzUmVjb3JkZXIgbV9kcmF3R2x5cGhzUmVjb3JkZXI7CiB9OwogCit0ZW1wbGF0ZTx0
eXBlbmFtZSBUPgorY29uc3RleHByIGJvb2wgUmVjb3JkZXI6Oml0ZW1OZWVkc1N0YXRlKCkKK3sK
KyAgICBpZiAoVDo6aXNEcmF3aW5nSXRlbSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyNpZiBV
U0UoQ0cpCisgICAgaWYgKFQ6Oml0ZW1UeXBlID09IEl0ZW1UeXBlOjpBcHBseUZpbGxQYXR0ZXJu
IHx8IFQ6Oml0ZW1UeXBlID09IEl0ZW1UeXBlOjpBcHBseVN0cm9rZVBhdHRlcm4pCisgICAgICAg
IHJldHVybiB0cnVlOworI2VuZGlmCisKKyAgICByZXR1cm4gZmFsc2U7Cit9CisKIH0KIH0KIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>