<?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>235028</bug_id>
          
          <creation_ts>2022-01-10 04:59:14 -0800</creation_ts>
          <short_desc>[Web Animations] getKeyframes() for a CSS Animation should not use computed style for keyframes (part 2)</short_desc>
          <delta_ts>2022-01-12 12:34:30 -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>Animations</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=235008</see_also>
          <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>
          
          <blocked>235138</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Antoine Quint">graouts</reporter>
          <assigned_to name="Antoine Quint">graouts</assigned_to>
          <cc>dino</cc>
    
    <cc>graouts</cc>
    
    <cc>koivisto</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1829417</commentid>
    <comment_count>0</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2022-01-10 04:59:14 -0800</bug_when>
    <thetext>getKeyframes() should not use the computed value for animated properties</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829421</commentid>
    <comment_count>1</comment_count>
      <attachid>448734</attachid>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2022-01-10 05:04:18 -0800</bug_when>
    <thetext>Created attachment 448734
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829433</commentid>
    <comment_count>2</comment_count>
      <attachid>448734</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2022-01-10 06:00:02 -0800</bug_when>
    <thetext>Comment on attachment 448734
Patch

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

&gt; Source/WebCore/animation/KeyframeEffect.cpp:674
&gt; +                if (m_pseudoId == PseudoId::None)
&gt; +                    return styleResolver.styleRulesForElement(target, Style::Resolver::AllCSSRules);
&gt; +                return styleResolver.pseudoStyleRulesForElement(target, m_pseudoId, Style::Resolver::AllCSSRules);

You can just call pseudoStyleRulesForElement with PseudoId::None.

Note that this does style resolution. I suppose it doesn&apos;t matter here that this is slow?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829452</commentid>
    <comment_count>3</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2022-01-10 07:05:37 -0800</bug_when>
    <thetext>(In reply to Antti Koivisto from comment #2)
&gt; Comment on attachment 448734 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=448734&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/animation/KeyframeEffect.cpp:674
&gt; &gt; +                if (m_pseudoId == PseudoId::None)
&gt; &gt; +                    return styleResolver.styleRulesForElement(target, Style::Resolver::AllCSSRules);
&gt; &gt; +                return styleResolver.pseudoStyleRulesForElement(target, m_pseudoId, Style::Resolver::AllCSSRules);
&gt; 
&gt; You can just call pseudoStyleRulesForElement with PseudoId::None.

Cool! I&apos;ll change that.

&gt; Note that this does style resolution. I suppose it doesn&apos;t matter here that
&gt; this is slow?

Not a concern at all.

Would you have some tips to obtain a CSSValue with substituted variables? That&apos;s the last piece of this puzzle.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829455</commentid>
    <comment_count>4</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2022-01-10 07:09:26 -0800</bug_when>
    <thetext>Committed r287835 (245887@trunk): &lt;https://commits.webkit.org/245887@trunk&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829456</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-01-10 07:10:23 -0800</bug_when>
    <thetext>&lt;rdar://problem/87338875&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>448734</attachid>
            <date>2022-01-10 05:04:18 -0800</date>
            <delta_ts>2022-01-10 06:49:37 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-235028-20220110140417.patch</filename>
            <type>text/plain</type>
            <size>11964</size>
            <attacher name="Antoine Quint">graouts</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg3ODMwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2Y5M2U5NjE0MDJmOWVj
MmQ3NjVkY2YxODZhNjNiOTY4NWMyZmU4Ny4uMzlmY2VhMDZlM2FhNjlmMzhiMzZiZjNkMWNjNTZm
MThiMTJlNzNkNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIyLTAxLTEwICBBbnRv
aW5lIFF1aW50ICA8Z3Jhb3V0c0B3ZWJraXQub3JnPgorCisgICAgICAgIFtXZWIgQW5pbWF0aW9u
c10gZ2V0S2V5ZnJhbWVzKCkgZm9yIGEgQ1NTIEFuaW1hdGlvbiBzaG91bGQgbm90IHVzZSBjb21w
dXRlZCBzdHlsZSBmb3Iga2V5ZnJhbWVzIChwYXJ0IDIpCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzUwMjgKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbiBidWcgMjM1MDA4LCB3ZSBhbHJlYWR5IGltcHJv
dmVkIHRoZSBzaXR1dGF0aW9uIGJ5IHJlYWRpbmcgZnJvbSB0aGUgU3R5bGVQcm9wZXJ0aWVzCisg
ICAgICAgIGFzc29jaWF0ZWQgd2l0aCB0aGUgU3R5bGVSdWxlS2V5ZnJhbWUgZm9yIENTUyBBbmlt
YXRpb25zLiBXZSdyZSBub3cgdGFraW5nIHRoZSBuZXh0CisgICAgICAgIHN0ZXAgYnkgcmVhZGlu
ZyBmcm9tIHRoZSBtYXRjaGluZyBydWxlcyBmb3IgdGhlIHByb3ZpZGVkIGVsZW1lbnQuCisKKyAg
ICAgICAgVGhlcmUgaXMgb25lIHJlbWFpbmluZyBjYXNlIHdoZXJlIHdlIHVzZSB0aGUgY29tcHV0
ZWQgc3R5bGU6IHdoZW4gdGhlIENTU1ZhbHVlIHVzZXMKKyAgICAgICAgYSBDU1MgdmFyaWFibGUu
IFRvIGZpeCB0aGUgY3NzL2Nzcy1hbmltYXRpb25zL0tleWZyYW1lRWZmZWN0LWdldEtleWZyYW1l
cy50ZW50YXRpdmUuaHRtbAorICAgICAgICBXUFQgZW50aXJlbHksIHdlJ2xsIG5lZWQgdG8gYmUg
YWJsZSB0byBzdWJzdGl0dXRlIHRob3NlIGluIHRoZSBvdXRwdXQuCisKKyAgICAgICAgKiBhbmlt
YXRpb24vS2V5ZnJhbWVFZmZlY3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6S2V5ZnJhbWVFZmZl
Y3Q6OmdldEtleWZyYW1lcyk6CisKIDIwMjItMDEtMDkgIFNhbSBXZWluaWcgIDx3ZWluaWdAYXBw
bGUuY29tPgogCiAgICAgICAgIFJlbW92ZSBzdXBwb3J0IGZvciBEaXJlY3QyRCAvIEZUVwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5jcHAKaW5kZXggNjg0ZjljYWY2
ZWIyN2VmZjdlZGRiYzY2NDEyODVmNzAyZTE5YTY2Mi4uMThmMTM0ZGFmYWNkMGU1N2RmNWI1ZjMy
YzVkMzJiMDdmMDM5OTRjMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tl
eWZyYW1lRWZmZWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVF
ZmZlY3QuY3BwCkBAIC02NjUsNiArNjY1LDIyIEBAIFZlY3RvcjxTdHJvbmc8SlNPYmplY3Q+PiBL
ZXlmcmFtZUVmZmVjdDo6Z2V0S2V5ZnJhbWVzKEpTR2xvYmFsT2JqZWN0JiBsZXhpY2FsR2xvCiAg
ICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICAgICAgfTsKIAorICAgICAgICBhdXRvIHN0
eWxlUHJvcGVydGllcyA9IE11dGFibGVTdHlsZVByb3BlcnRpZXM6OmNyZWF0ZSgpOworICAgICAg
ICBpZiAobV9ibGVuZGluZ0tleWZyYW1lc1NvdXJjZSA9PSBCbGVuZGluZ0tleWZyYW1lc1NvdXJj
ZTo6Q1NTQW5pbWF0aW9uKSB7CisgICAgICAgICAgICBhdXRvIG1hdGNoaW5nUnVsZXMgPSBbJl0o
KSAtPiBjb25zdCBWZWN0b3I8UmVmUHRyPGNvbnN0IFN0eWxlUnVsZT4+IHsKKyAgICAgICAgICAg
ICAgICBhdXRvJiBzdHlsZVJlc29sdmVyID0gbV90YXJnZXQtPnN0eWxlUmVzb2x2ZXIoKTsKKyAg
ICAgICAgICAgICAgICBpZiAobV9wc2V1ZG9JZCA9PSBQc2V1ZG9JZDo6Tm9uZSkKKyAgICAgICAg
ICAgICAgICAgICAgcmV0dXJuIHN0eWxlUmVzb2x2ZXIuc3R5bGVSdWxlc0ZvckVsZW1lbnQodGFy
Z2V0LCBTdHlsZTo6UmVzb2x2ZXI6OkFsbENTU1J1bGVzKTsKKyAgICAgICAgICAgICAgICByZXR1
cm4gc3R5bGVSZXNvbHZlci5wc2V1ZG9TdHlsZVJ1bGVzRm9yRWxlbWVudCh0YXJnZXQsIG1fcHNl
dWRvSWQsIFN0eWxlOjpSZXNvbHZlcjo6QWxsQ1NTUnVsZXMpOworICAgICAgICAgICAgfSgpOwor
ICAgICAgICAgICAgZm9yIChhdXRvJiBtYXRjaGVkUnVsZSA6IG1hdGNoaW5nUnVsZXMpCisgICAg
ICAgICAgICAgICAgc3R5bGVQcm9wZXJ0aWVzLT5tZXJnZUFuZE92ZXJyaWRlT25Db25mbGljdCht
YXRjaGVkUnVsZS0+cHJvcGVydGllcygpKTsKKyAgICAgICAgICAgIGlmIChpczxTdHlsZWRFbGVt
ZW50PihtX3RhcmdldCkgJiYgbV9wc2V1ZG9JZCA9PSBQc2V1ZG9JZDo6Tm9uZSkgeworICAgICAg
ICAgICAgICAgIGlmIChhdXRvKiBpbmxpbmVQcm9wZXJ0aWVzID0gZG93bmNhc3Q8U3R5bGVkRWxl
bWVudD4oKm1fdGFyZ2V0KS5pbmxpbmVTdHlsZSgpKQorICAgICAgICAgICAgICAgICAgICBzdHls
ZVByb3BlcnRpZXMtPm1lcmdlQW5kT3ZlcnJpZGVPbkNvbmZsaWN0KCppbmxpbmVQcm9wZXJ0aWVz
KTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorCiAgICAgICAgIC8vIFdlIG5lZWQgdG8gZXN0
YWJsaXNoIHdoaWNoIHByb3BlcnRpZXMgYXJlIGltcGxpY2l0IGZvciAwJSBhbmQgMTAwJS4KICAg
ICAgICAgSGFzaFNldDxDU1NQcm9wZXJ0eUlEPiB6ZXJvS2V5ZnJhbWVQcm9wZXJ0aWVzID0gY29t
cHV0ZWRLZXlmcmFtZXMucHJvcGVydGllcygpOwogICAgICAgICBIYXNoU2V0PENTU1Byb3BlcnR5
SUQ+IG9uZUtleWZyYW1lUHJvcGVydGllcyA9IGNvbXB1dGVkS2V5ZnJhbWVzLnByb3BlcnRpZXMo
KTsKQEAgLTY5Miw2ICs3MDgsOCBAQCBWZWN0b3I8U3Ryb25nPEpTT2JqZWN0Pj4gS2V5ZnJhbWVF
ZmZlY3Q6OmdldEtleWZyYW1lcyhKU0dsb2JhbE9iamVjdCYgbGV4aWNhbEdsbwogICAgICAgICAg
ICAgLy8gfTsKIAogICAgICAgICAgICAgYXV0byYga2V5ZnJhbWUgPSBjb21wdXRlZEtleWZyYW1l
c1tpXTsKKyAgICAgICAgICAgIGF1dG8mIHN0eWxlID0gKmtleWZyYW1lLnN0eWxlKCk7CisgICAg
ICAgICAgICBhdXRvKiBrZXlmcmFtZVJ1bGUgPSBrZXlmcmFtZVJ1bGVGb3JLZXkoa2V5ZnJhbWUu
a2V5KCkpOwogCiAgICAgICAgICAgICAvLyAyLiBTZXQgb2Zmc2V0LCBjb21wdXRlZE9mZnNldCwg
ZWFzaW5nIG1lbWJlcnMgb2Ygb3V0cHV0IGtleWZyYW1lIHRvIHRoZSByZXNwZWN0aXZlIHZhbHVl
cyBrZXlmcmFtZSBvZmZzZXQsIGNvbXB1dGVkIGtleWZyYW1lIG9mZnNldCwKICAgICAgICAgICAg
IC8vIGFuZCBrZXlmcmFtZS1zcGVjaWZpYyB0aW1pbmcgZnVuY3Rpb24gb2Yga2V5ZnJhbWUuCkBA
IC03MDMsMjMgKzcyMSwxMCBAQCBWZWN0b3I8U3Ryb25nPEpTT2JqZWN0Pj4gS2V5ZnJhbWVFZmZl
Y3Q6OmdldEtleWZyYW1lcyhKU0dsb2JhbE9iamVjdCYgbGV4aWNhbEdsbwogCiAgICAgICAgICAg
ICBhdXRvIG91dHB1dEtleWZyYW1lID0gY29udmVydERpY3Rpb25hcnlUb0pTKGxleGljYWxHbG9i
YWxPYmplY3QsICpqc0Nhc3Q8SlNET01HbG9iYWxPYmplY3QqPigmbGV4aWNhbEdsb2JhbE9iamVj
dCksIGNvbXB1dGVkS2V5ZnJhbWUpOwogCi0gICAgICAgICAgICBhdXRvIGFkZFByb3BlcnR5VG9L
ZXlmcmFtZSA9IFsmXShDU1NQcm9wZXJ0eUlEIGNzc1Byb3BlcnR5SWQsIFN0cmluZyBpZGxWYWx1
ZSkgeworICAgICAgICAgICAgYXV0byBhZGRQcm9wZXJ0eVRvS2V5ZnJhbWUgPSBbJl0oQ1NTUHJv
cGVydHlJRCBjc3NQcm9wZXJ0eUlkKSB7CiAgICAgICAgICAgICAgICAgLy8gMS4gTGV0IHByb3Bl
cnR5IG5hbWUgYmUgdGhlIHJlc3VsdCBvZiBhcHBseWluZyB0aGUgYW5pbWF0aW9uIHByb3BlcnR5
IG5hbWUgdG8gSURMIGF0dHJpYnV0ZSBuYW1lIGFsZ29yaXRobSB0byB0aGUgcHJvcGVydHkgbmFt
ZSBvZiBkZWNsYXJhdGlvbi4KICAgICAgICAgICAgICAgICBhdXRvIHByb3BlcnR5TmFtZSA9IENT
U1Byb3BlcnR5SURUb0lETEF0dHJpYnV0ZU5hbWUoY3NzUHJvcGVydHlJZCk7CiAgICAgICAgICAg
ICAgICAgLy8gMi4gTGV0IElETCB2YWx1ZSBiZSB0aGUgcmVzdWx0IG9mIHNlcmlhbGl6aW5nIHRo
ZSBwcm9wZXJ0eSB2YWx1ZSBvZiBkZWNsYXJhdGlvbiBieSBwYXNzaW5nIGRlY2xhcmF0aW9uIHRv
IHRoZSBhbGdvcml0aG0gdG8gc2VyaWFsaXplIGEgQ1NTIHZhbHVlLgotICAgICAgICAgICAgICAg
IC8vIDMuIExldCB2YWx1ZSBiZSB0aGUgcmVzdWx0IG9mIGNvbnZlcnRpbmcgSURMIHZhbHVlIHRv
IGFuIEVDTUFTY3JpcHQgU3RyaW5nIHZhbHVlLgotICAgICAgICAgICAgICAgIGF1dG8gdmFsdWUg
PSB0b0pTPElETERPTVN0cmluZz4obGV4aWNhbEdsb2JhbE9iamVjdCwgaWRsVmFsdWUpOwotICAg
ICAgICAgICAgICAgIC8vIDQuIENhbGwgdGhlIFtbRGVmaW5lT3duUHJvcGVydHldXSBpbnRlcm5h
bCBtZXRob2Qgb24gb3V0cHV0IGtleWZyYW1lIHdpdGggcHJvcGVydHkgbmFtZSBwcm9wZXJ0eSBu
YW1lLAotICAgICAgICAgICAgICAgIC8vICAgIFByb3BlcnR5IERlc2NyaXB0b3IgeyBbW1dyaXRh
YmxlXV06IHRydWUsIFtbRW51bWVyYWJsZV1dOiB0cnVlLCBbW0NvbmZpZ3VyYWJsZV1dOiB0cnVl
LCBbW1ZhbHVlXV06IHZhbHVlIH0gYW5kIEJvb2xlYW4gZmxhZyBmYWxzZS4KLSAgICAgICAgICAg
ICAgICBKU09iamVjdDo6ZGVmaW5lT3duUHJvcGVydHkob3V0cHV0S2V5ZnJhbWUsICZsZXhpY2Fs
R2xvYmFsT2JqZWN0LCBBdG9tU3RyaW5nKHByb3BlcnR5TmFtZSkuaW1wbCgpLCBQcm9wZXJ0eURl
c2NyaXB0b3IodmFsdWUsIDApLCBmYWxzZSk7Ci0gICAgICAgICAgICB9OwotCi0gICAgICAgICAg
ICAvLyAzLiBGb3IgZWFjaCBhbmltYXRpb24gcHJvcGVydHktdmFsdWUgcGFpciBzcGVjaWZpZWQg
b24ga2V5ZnJhbWUsIGRlY2xhcmF0aW9uLCBwZXJmb3JtIHRoZSBmb2xsb3dpbmcgc3RlcHM6Ci0g
ICAgICAgICAgICBhdXRvJiBzdHlsZSA9ICprZXlmcmFtZS5zdHlsZSgpOwotICAgICAgICAgICAg
YXV0byoga2V5ZnJhbWVSdWxlID0ga2V5ZnJhbWVSdWxlRm9yS2V5KGtleWZyYW1lLmtleSgpKTsK
LSAgICAgICAgICAgIGZvciAoYXV0byBjc3NQcm9wZXJ0eUlkIDoga2V5ZnJhbWUucHJvcGVydGll
cygpKSB7Ci0gICAgICAgICAgICAgICAgaWYgKGNzc1Byb3BlcnR5SWQgPT0gQ1NTUHJvcGVydHlD
dXN0b20pCi0gICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgIFN0
cmluZyBpZGxWYWx1ZSA9ICIiOwogICAgICAgICAgICAgICAgIGlmIChrZXlmcmFtZVJ1bGUpIHsK
ICAgICAgICAgICAgICAgICAgICAgaWYgKGF1dG8gY3NzVmFsdWUgPSBrZXlmcmFtZVJ1bGUtPnBy
b3BlcnRpZXMoKS5nZXRQcm9wZXJ0eUNTU1ZhbHVlKGNzc1Byb3BlcnR5SWQpKSB7CkBAIC03Mjcs
MjYgKzczMiwzOSBAQCBWZWN0b3I8U3Ryb25nPEpTT2JqZWN0Pj4gS2V5ZnJhbWVFZmZlY3Q6Omdl
dEtleWZyYW1lcyhKU0dsb2JhbE9iamVjdCYgbGV4aWNhbEdsbwogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGlkbFZhbHVlID0ga2V5ZnJhbWVSdWxlLT5wcm9wZXJ0aWVzKCkuZ2V0UHJvcGVy
dHlWYWx1ZShjc3NQcm9wZXJ0eUlkKTsKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgICAgICBpZiAoaWRsVmFsdWUuaXNFbXB0eSgpKSB7CisgICAg
ICAgICAgICAgICAgICAgIGlmIChhdXRvIGNzc1ZhbHVlID0gc3R5bGVQcm9wZXJ0aWVzLT5nZXRQ
cm9wZXJ0eUNTU1ZhbHVlKGNzc1Byb3BlcnR5SWQpKSB7CisgICAgICAgICAgICAgICAgICAgICAg
ICBpZiAoIWNzc1ZhbHVlLT5oYXNWYXJpYWJsZVJlZmVyZW5jZXMoKSkKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBpZGxWYWx1ZSA9IHN0eWxlUHJvcGVydGllcy0+Z2V0UHJvcGVydHlWYWx1
ZShjc3NQcm9wZXJ0eUlkKTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAg
IH0KICAgICAgICAgICAgICAgICBpZiAoaWRsVmFsdWUuaXNFbXB0eSgpKSB7CiAgICAgICAgICAg
ICAgICAgICAgIGlmIChhdXRvIGNzc1ZhbHVlID0gY29tcHV0ZWRTdHlsZUV4dHJhY3Rvci52YWx1
ZUZvclByb3BlcnR5SW5TdHlsZShzdHlsZSwgY3NzUHJvcGVydHlJZCwgcmVuZGVyZXIpKQogICAg
ICAgICAgICAgICAgICAgICAgICAgaWRsVmFsdWUgPSBjc3NWYWx1ZS0+Y3NzVGV4dCgpOwogICAg
ICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBhZGRQcm9wZXJ0eVRvS2V5ZnJhbWUoY3Nz
UHJvcGVydHlJZCwgaWRsVmFsdWUpOworICAgICAgICAgICAgICAgIC8vIDMuIExldCB2YWx1ZSBi
ZSB0aGUgcmVzdWx0IG9mIGNvbnZlcnRpbmcgSURMIHZhbHVlIHRvIGFuIEVDTUFTY3JpcHQgU3Ry
aW5nIHZhbHVlLgorICAgICAgICAgICAgICAgIGF1dG8gdmFsdWUgPSB0b0pTPElETERPTVN0cmlu
Zz4obGV4aWNhbEdsb2JhbE9iamVjdCwgaWRsVmFsdWUpOworICAgICAgICAgICAgICAgIC8vIDQu
IENhbGwgdGhlIFtbRGVmaW5lT3duUHJvcGVydHldXSBpbnRlcm5hbCBtZXRob2Qgb24gb3V0cHV0
IGtleWZyYW1lIHdpdGggcHJvcGVydHkgbmFtZSBwcm9wZXJ0eSBuYW1lLAorICAgICAgICAgICAg
ICAgIC8vICAgIFByb3BlcnR5IERlc2NyaXB0b3IgeyBbW1dyaXRhYmxlXV06IHRydWUsIFtbRW51
bWVyYWJsZV1dOiB0cnVlLCBbW0NvbmZpZ3VyYWJsZV1dOiB0cnVlLCBbW1ZhbHVlXV06IHZhbHVl
IH0gYW5kIEJvb2xlYW4gZmxhZyBmYWxzZS4KKyAgICAgICAgICAgICAgICBKU09iamVjdDo6ZGVm
aW5lT3duUHJvcGVydHkob3V0cHV0S2V5ZnJhbWUsICZsZXhpY2FsR2xvYmFsT2JqZWN0LCBBdG9t
U3RyaW5nKHByb3BlcnR5TmFtZSkuaW1wbCgpLCBQcm9wZXJ0eURlc2NyaXB0b3IodmFsdWUsIDAp
LCBmYWxzZSk7CisgICAgICAgICAgICB9OworCisgICAgICAgICAgICAvLyAzLiBGb3IgZWFjaCBh
bmltYXRpb24gcHJvcGVydHktdmFsdWUgcGFpciBzcGVjaWZpZWQgb24ga2V5ZnJhbWUsIGRlY2xh
cmF0aW9uLCBwZXJmb3JtIHRoZSBmb2xsb3dpbmcgc3RlcHM6CisgICAgICAgICAgICBmb3IgKGF1
dG8gY3NzUHJvcGVydHlJZCA6IGtleWZyYW1lLnByb3BlcnRpZXMoKSkgeworICAgICAgICAgICAg
ICAgIGlmIChjc3NQcm9wZXJ0eUlkID09IENTU1Byb3BlcnR5Q3VzdG9tKQorICAgICAgICAgICAg
ICAgICAgICBjb250aW51ZTsKKyAgICAgICAgICAgICAgICBhZGRQcm9wZXJ0eVRvS2V5ZnJhbWUo
Y3NzUHJvcGVydHlJZCk7CiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgIC8vIE5vdyBhZGQg
dGhlIGltcGxpY2l0IHByb3BlcnRpZXMgaW4gY2FzZSB0aGVyZSBhcmUgYW55IGFuZCB3ZSdyZSBk
ZWFsaW5nIHdpdGggYSAwJSBvciAxMDAlIGtleWZyYW1lLgogICAgICAgICAgICAgaWYgKGxhc3RT
dHlsZUNoYW5nZUV2ZW50U3R5bGUpIHsKICAgICAgICAgICAgICAgICBpZiAoIWtleWZyYW1lLmtl
eSgpKSB7Ci0gICAgICAgICAgICAgICAgICAgIGZvciAoYXV0byBjc3NQcm9wZXJ0eUlkIDogemVy
b0tleWZyYW1lUHJvcGVydGllcykgewotICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGF1dG8g
Y3NzVmFsdWUgPSBjb21wdXRlZFN0eWxlRXh0cmFjdG9yLnZhbHVlRm9yUHJvcGVydHlJblN0eWxl
KCpsYXN0U3R5bGVDaGFuZ2VFdmVudFN0eWxlLCBjc3NQcm9wZXJ0eUlkLCByZW5kZXJlcikpCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkUHJvcGVydHlUb0tleWZyYW1lKGNzc1Byb3Bl
cnR5SWQsIGNzc1ZhbHVlLT5jc3NUZXh0KCkpOwotICAgICAgICAgICAgICAgICAgICB9CisgICAg
ICAgICAgICAgICAgICAgIGZvciAoYXV0byBjc3NQcm9wZXJ0eUlkIDogemVyb0tleWZyYW1lUHJv
cGVydGllcykKKyAgICAgICAgICAgICAgICAgICAgICAgIGFkZFByb3BlcnR5VG9LZXlmcmFtZShj
c3NQcm9wZXJ0eUlkKTsKICAgICAgICAgICAgICAgICAgICAgemVyb0tleWZyYW1lUHJvcGVydGll
cy5jbGVhcigpOwogICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoa2V5ZnJhbWUua2V5KCkgPT0g
MSkgewotICAgICAgICAgICAgICAgICAgICBmb3IgKGF1dG8gY3NzUHJvcGVydHlJZCA6IG9uZUtl
eWZyYW1lUHJvcGVydGllcykgewotICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGF1dG8gY3Nz
VmFsdWUgPSBjb21wdXRlZFN0eWxlRXh0cmFjdG9yLnZhbHVlRm9yUHJvcGVydHlJblN0eWxlKCps
YXN0U3R5bGVDaGFuZ2VFdmVudFN0eWxlLCBjc3NQcm9wZXJ0eUlkLCByZW5kZXJlcikpCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgYWRkUHJvcGVydHlUb0tleWZyYW1lKGNzc1Byb3BlcnR5
SWQsIGNzc1ZhbHVlLT5jc3NUZXh0KCkpOwotICAgICAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICAgICAgICAgIGZvciAoYXV0byBjc3NQcm9wZXJ0eUlkIDogb25lS2V5ZnJhbWVQcm9wZXJ0
aWVzKQorICAgICAgICAgICAgICAgICAgICAgICAgYWRkUHJvcGVydHlUb0tleWZyYW1lKGNzc1By
b3BlcnR5SWQpOwogICAgICAgICAgICAgICAgICAgICBvbmVLZXlmcmFtZVByb3BlcnRpZXMuY2xl
YXIoKTsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L0NoYW5nZUxvZwppbmRleCAxMzNhZTJhMWNkYWI5NGE3MTNiZjA3NjNlMzA0NWFjMmUzMzAwOTA1
Li45YWRkY2ZkYTkzNTA0MTZkZDI2OWFhMzkwOWIxNGQyMTk1ZDAwMDBiIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAyMi0wMS0xMCAgQW50b2luZSBR
dWludCAgPGdyYW91dHNAd2Via2l0Lm9yZz4KKworICAgICAgICBbV2ViIEFuaW1hdGlvbnNdIGdl
dEtleWZyYW1lcygpIGZvciBhIENTUyBBbmltYXRpb24gc2hvdWxkIG5vdCB1c2UgY29tcHV0ZWQg
c3R5bGUgZm9yIGtleWZyYW1lcyAocGFydCAyKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM1MDI4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgTWFyayBXUFQgcHJvZ3Jlc3Npb25zLgorCisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtYW5pbWF0aW9ucy9LZXlmcmFtZUVmZmVjdC1nZXRL
ZXlmcmFtZXMudGVudGF0aXZlLWV4cGVjdGVkLnR4dDoKKwogMjAyMi0wMS0wOSAgQW50b2luZSBR
dWludCAgPGdyYW91dHNAd2Via2l0Lm9yZz4KIAogICAgICAgICBVbnJldmlld2VkIFdQVCB1cGRh
dGUgYWZ0ZXIgaHR0cHM6Ly9naXRodWIuY29tL3dlYi1wbGF0Zm9ybS10ZXN0cy93cHQvcHVsbC8z
MjIyMi4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy1hbmltYXRpb25zL0tleWZyYW1lRWZmZWN0LWdldEtleWZyYW1lcy50ZW50
YXRpdmUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3MvY3NzLWFuaW1hdGlvbnMvS2V5ZnJhbWVFZmZlY3QtZ2V0S2V5ZnJhbWVzLnRl
bnRhdGl2ZS1leHBlY3RlZC50eHQKaW5kZXggOTZmMjIyZGE2MjE0NjNiYTNlMTg2ZDAyZjdiYzNl
MTQ5ODNkNmY2OS4uMGQ1N2ZkNjM5MmMwYTFmZGIxOTU1NDMzMDg1NDAyYTkzYWI0ZWI0MyAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
Y3NzLWFuaW1hdGlvbnMvS2V5ZnJhbWVFZmZlY3QtZ2V0S2V5ZnJhbWVzLnRlbnRhdGl2ZS1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3MvY3NzLWFuaW1hdGlvbnMvS2V5ZnJhbWVFZmZlY3QtZ2V0S2V5ZnJhbWVzLnRlbnRhdGl2
ZS1leHBlY3RlZC50eHQKQEAgLTE3LDggKzE3LDggQEAgUEFTUyBLZXlmcmFtZUVmZmVjdC5nZXRL
ZXlmcmFtZXMoKSByZXR1cm5zIGV4cGVjdGVkIGZyYW1lcyBmb3IgYW4gYW5pbWF0aW9uIHdpdGgK
IFBBU1MgS2V5ZnJhbWVFZmZlY3QuZ2V0S2V5ZnJhbWVzKCkgcmV0dXJucyBleHBlY3RlZCBmcmFt
ZXMgZm9yIG92ZXJsYXBwaW5nIGtleWZyYW1lcwogUEFTUyBLZXlmcmFtZUVmZmVjdC5nZXRLZXlm
cmFtZXMoKSByZXR1cm5zIGV4cGVjdGVkIHZhbHVlcyBmb3IgYW5pbWF0aW9ucyB3aXRoIGZpbHRl
ciBwcm9wZXJ0aWVzIGFuZCBtaXNzaW5nIGtleWZyYW1lcwogUEFTUyBLZXlmcmFtZUVmZmVjdC5n
ZXRLZXlmcmFtZXMoKSByZXR1cm5zIGV4cGVjdGVkIHZhbHVlcyBmb3IgYW5pbWF0aW9uIHdpdGgg
ZHJvcC1zaGFkb3cgb2YgZmlsdGVyIHByb3BlcnR5Ci1GQUlMIEtleWZyYW1lRWZmZWN0LmdldEtl
eWZyYW1lcygpIHJldHVybnMgZXhwZWN0ZWQgdmFsdWVzIGZvciBhbmltYXRpb25zIHdpdGggdGV4
dC1zaGFkb3cgcHJvcGVydGllcyBhbmQgbWlzc2luZyBrZXlmcmFtZXMgYXNzZXJ0X2VxdWFsczog
dmFsdWUgZm9yICd0ZXh0U2hhZG93JyBvbiBLZXlmcmFtZSAjMCBzaG91bGQgbWF0Y2ggZXhwZWN0
ZWQgInJnYigwLCAwLCAwKSAxcHggMXB4IDJweCwgcmdiKDAsIDAsIDI1NSkgMHB4IDBweCAxNnB4
LCByZ2IoMCwgMCwgMjU1KSAwcHggMHB4IDMuMnB4IiBidXQgZ290ICJyZ2IoMCwgMCwgMCkgMXB4
IDFweCAycHgsIHJnYigwLCAwLCAyNTUpIDBweCAwcHggMTZweCwgcmdiKDAsIDAsIDI1NSkgMHB4
IDBweCAzLjIwMDAwMDA0NzY4MzcxNnB4IgotRkFJTCBLZXlmcmFtZUVmZmVjdC5nZXRLZXlmcmFt
ZXMoKSByZXR1cm5zIGV4cGVjdGVkIHZhbHVlcyBmb3IgYW5pbWF0aW9ucyB3aXRoIGJhY2tncm91
bmQtc2l6ZSBwcm9wZXJ0aWVzIGFuZCBtaXNzaW5nIGtleWZyYW1lcyBhc3NlcnRfZXF1YWxzOiB2
YWx1ZSBmb3IgJ2JhY2tncm91bmRTaXplJyBvbiBDb21wdXRlZEtleWZyYW1lICMwIGFmdGVyIHVw
ZGF0aW5nIGN1cnJlbnQgc3R5bGUgc2hvdWxkIG1hdGNoIGV4cGVjdGVkICIzMHB4LCA0MCUsIGF1
dG8iIGJ1dCBnb3QgIjMwcHgiCitQQVNTIEtleWZyYW1lRWZmZWN0LmdldEtleWZyYW1lcygpIHJl
dHVybnMgZXhwZWN0ZWQgdmFsdWVzIGZvciBhbmltYXRpb25zIHdpdGggdGV4dC1zaGFkb3cgcHJv
cGVydGllcyBhbmQgbWlzc2luZyBrZXlmcmFtZXMKK1BBU1MgS2V5ZnJhbWVFZmZlY3QuZ2V0S2V5
ZnJhbWVzKCkgcmV0dXJucyBleHBlY3RlZCB2YWx1ZXMgZm9yIGFuaW1hdGlvbnMgd2l0aCBiYWNr
Z3JvdW5kLXNpemUgcHJvcGVydGllcyBhbmQgbWlzc2luZyBrZXlmcmFtZXMKIEZBSUwgS2V5ZnJh
bWVFZmZlY3QuZ2V0S2V5ZnJhbWVzKCkgcmV0dXJucyBleHBlY3RlZCB2YWx1ZXMgZm9yIGFuaW1h
dGlvbnMgd2l0aCBDU1MgdmFyaWFibGVzIGFzIGtleWZyYW1lIHZhbHVlcyBhc3NlcnRfZXF1YWxz
OiB2YWx1ZSBmb3IgJ3RyYW5zZm9ybScgb24gS2V5ZnJhbWUgIzEgc2hvdWxkIG1hdGNoIGV4cGVj
dGVkICJ0cmFuc2xhdGUoMTAwcHgpIiBidXQgZ290ICJtYXRyaXgoMSwgMCwgMCwgMSwgMTAwLCAw
KSIKIFBBU1MgS2V5ZnJhbWVFZmZlY3QuZ2V0S2V5ZnJhbWVzKCkgcmV0dXJucyBleHBlY3RlZCB2
YWx1ZXMgZm9yIGFuaW1hdGlvbnMgd2l0aCBDU1MgdmFyaWFibGVzIGFzIGtleWZyYW1lIHZhbHVl
cyBpbiBhIHNob3J0aGFuZCBwcm9wZXJ0eQogUEFTUyBLZXlmcmFtZUVmZmVjdC5nZXRLZXlmcmFt
ZXMoKSByZXR1cm5zIGV4cGVjdGVkIHZhbHVlcyBmb3IgYW5pbWF0aW9ucyB3aXRoIGEgQ1NTIHZh
cmlhYmxlIHdoaWNoIGlzIG92ZXJyaWRlbiBieSB0aGUgdmFsdWUgaW4ga2V5ZnJhbWUK
</data>
<flag name="review"
          id="474674"
          type_id="1"
          status="+"
          setter="koivisto"
    />
    <flag name="commit-queue"
          id="474685"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
      

    </bug>

</bugzilla>