<?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>59623</bug_id>
          
          <creation_ts>2011-04-27 11:37:42 -0700</creation_ts>
          <short_desc>Cleanup CSSStyleApplyProperty.cpp</short_desc>
          <delta_ts>2011-04-28 22:07:26 -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>CSS</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>54707</dependson>
          <blocked>59774</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Nikolas Zimmermann">zimmermann</reporter>
          <assigned_to name="Nikolas Zimmermann">zimmermann</assigned_to>
          <cc>eric</cc>
    
    <cc>koivisto</cc>
    
    <cc>macpherson</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>393691</commentid>
    <comment_count>0</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2011-04-27 11:37:42 -0700</bug_when>
    <thetext>Cleanup CSSStyleApplyProperty.cpp, it&apos;s pretty hard to read as is, and uses too many Base classes.
As first step remove ApplyPropertyColorBase, merge it with ApplyPropertyColor.
Use typedefs for the function pointers where possible!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>393692</commentid>
    <comment_count>1</comment_count>
      <attachid>91316</attachid>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2011-04-27 11:39:53 -0700</bug_when>
    <thetext>Created attachment 91316
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>393694</commentid>
    <comment_count>2</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2011-04-27 11:43:40 -0700</bug_when>
    <thetext>r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>393695</commentid>
    <comment_count>3</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2011-04-27 11:44:24 -0700</bug_when>
    <thetext>Landed in r85069.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>393882</commentid>
    <comment_count>4</comment_count>
    <who name="Luke Macpherson">macpherson</who>
    <bug_when>2011-04-27 15:26:33 -0700</bug_when>
    <thetext>Was this just the typedef code taken from my patch https://bug-59414-attachments.webkit.org/attachment.cgi?id=91221 ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>394028</commentid>
    <comment_count>5</comment_count>
    <who name="Luke Macpherson">macpherson</who>
    <bug_when>2011-04-27 17:24:43 -0700</bug_when>
    <thetext>View in context: https://bugs.webkit.org/attachment.cgi?id=91316&amp;action=review

Overall I like the cleanup. Thanks.

&gt; Source/WebCore/css/CSSStyleApplyProperty.cpp:147
&gt; +        (selector-&gt;style()-&gt;*m_setter)(m_initial ? m_initial() : Color());

Looks good.

&gt; Source/WebCore/css/CSSStyleApplyProperty.cpp:155
&gt; +        if (m_initial &amp;&amp; primitiveValue-&gt;getIdent() == CSSValueCurrentcolor)

Use of m_initial here seems to add an odd side-effect to that parameter. Perhaps this would be better handled by adding another constructor value &quot;inheritColorFromParent = true&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>394361</commentid>
    <comment_count>6</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2011-04-28 04:25:10 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; Was this just the typedef code taken from my patch https://bug-59414-attachments.webkit.org/attachment.cgi?id=91221 ?
I started from scratch, I forgot that you partly fixed that problem in your patch!

(In reply to comment #5)
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=91316&amp;action=review
&gt; 
&gt; Overall I like the cleanup. Thanks.
&gt; 
&gt; &gt; Source/WebCore/css/CSSStyleApplyProperty.cpp:147
&gt; &gt; +        (selector-&gt;style()-&gt;*m_setter)(m_initial ? m_initial() : Color());
&gt; 
&gt; Looks good.
&gt; 
&gt; &gt; Source/WebCore/css/CSSStyleApplyProperty.cpp:155
&gt; &gt; +        if (m_initial &amp;&amp; primitiveValue-&gt;getIdent() == CSSValueCurrentcolor)
&gt; 
&gt; Use of m_initial here seems to add an odd side-effect to that parameter. Perhaps this would be better handled by adding another constructor value &quot;inheritColorFromParent = true&quot;.
That&apos;s true, if you want to modify it I&apos;m happy to review!</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>91316</attachid>
            <date>2011-04-27 11:39:53 -0700</date>
            <delta_ts>2011-04-27 11:43:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>CleanupCSS.diff</filename>
            <type>text/plain</type>
            <size>11274</size>
            <attacher name="Nikolas Zimmermann">zimmermann</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDg1MDY4KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTEtMDQtMjcgIE5pa29sYXMg
WmltbWVybWFubiAgPG56aW1tZXJtYW5uQHJpbS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ2xlYW51cCBDU1NTdHlsZUFwcGx5UHJvcGVydHku
Y3BwCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01OTYy
MworCisgICAgICAgIEFzIGZpcnN0IHN0ZXAgcmVtb3ZlIEFwcGx5UHJvcGVydHlDb2xvckJhc2Us
IG1lcmdlIGl0IHdpdGggQXBwbHlQcm9wZXJ0eUNvbG9yLCB0aGVyZSdzIG5vIG5lZWQgZm9yIHR3
byBzZXBlcmF0ZWQgY2xhc3Nlcy4KKyAgICAgICAgVXNlIHR5cGVkZWZzIGluc3RlYWQgb2YgcmVw
YXRpbmcgdGhlIGZ1bmN0aW9uIHBvaW50ZXIgZGVjbGFyYXRpb25zIGluIGEgZmV3IHBsYWNlcy4K
KworICAgICAgICAqIGNzcy9DU1NTdHlsZUFwcGx5UHJvcGVydHkuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6QXBwbHlQcm9wZXJ0eURlZmF1bHQ6OkFwcGx5UHJvcGVydHlEZWZhdWx0KToKKyAgICAg
ICAgKFdlYkNvcmU6OkFwcGx5UHJvcGVydHlDb2xvcjo6QXBwbHlQcm9wZXJ0eUNvbG9yKToKKyAg
ICAgICAgKFdlYkNvcmU6OkFwcGx5UHJvcGVydHlDb2xvcjo6YXBwbHlJbmhlcml0VmFsdWUpOgor
ICAgICAgICAoV2ViQ29yZTo6QXBwbHlQcm9wZXJ0eUNvbG9yOjphcHBseUluaXRpYWxWYWx1ZSk6
CisgICAgICAgIChXZWJDb3JlOjpBcHBseVByb3BlcnR5Q29sb3I6OmFwcGx5VmFsdWUpOgorICAg
ICAgICAoV2ViQ29yZTo6Q1NTU3R5bGVBcHBseVByb3BlcnR5OjpDU1NTdHlsZUFwcGx5UHJvcGVy
dHkpOgorCiAyMDExLTA0LTI3ICBEYW4gQmVybnN0ZWluICA8bWl0ekBhcHBsZS5jb20+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgQW5kZXJzIENhcmxzc29uLgpJbmRleDogU291cmNlL1dlYkNvcmUv
Y3NzL0NTU1N0eWxlQXBwbHlQcm9wZXJ0eS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvY3NzL0NTU1N0eWxlQXBwbHlQcm9wZXJ0eS5jcHAJKHJldmlzaW9uIDg0OTQ4KQorKysgU291
cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlQXBwbHlQcm9wZXJ0eS5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTg0LDcgKzg0LDExIEBAIHB1YmxpYzoKIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgogY2xhc3Mg
QXBwbHlQcm9wZXJ0eURlZmF1bHQgOiBwdWJsaWMgQXBwbHlQcm9wZXJ0eUJhc2UgewogcHVibGlj
OgotICAgIEFwcGx5UHJvcGVydHlEZWZhdWx0KFQgKFJlbmRlclN0eWxlOjoqZ2V0dGVyKSgpIGNv
bnN0LCB2b2lkIChSZW5kZXJTdHlsZTo6KnNldHRlcikoVCksIFQgKCppbml0aWFsKSgpKQorICAg
IHR5cGVkZWYgVCAoUmVuZGVyU3R5bGU6OipHZXR0ZXJGdW5jdGlvbikoKSBjb25zdDsKKyAgICB0
eXBlZGVmIHZvaWQgKFJlbmRlclN0eWxlOjoqU2V0dGVyRnVuY3Rpb24pKFQpOworICAgIHR5cGVk
ZWYgVCAoKkluaXRpYWxGdW5jdGlvbikoKTsKKworICAgIEFwcGx5UHJvcGVydHlEZWZhdWx0KEdl
dHRlckZ1bmN0aW9uIGdldHRlciwgU2V0dGVyRnVuY3Rpb24gc2V0dGVyLCBJbml0aWFsRnVuY3Rp
b24gaW5pdGlhbCkKICAgICAgICAgOiBtX2dldHRlcihnZXR0ZXIpCiAgICAgICAgICwgbV9zZXR0
ZXIoc2V0dGVyKQogICAgICAgICAsIG1faW5pdGlhbChpbml0aWFsKQpAQCAtMTA4LDY5ICsxMTIs
NTcgQEAgcHVibGljOgogICAgIH0KIAogcHJvdGVjdGVkOgotICAgIFQgKFJlbmRlclN0eWxlOjoq
bV9nZXR0ZXIpKCkgY29uc3Q7Ci0gICAgdm9pZCAoUmVuZGVyU3R5bGU6OiptX3NldHRlcikoVCk7
Ci0gICAgVCAoKm1faW5pdGlhbCkoKTsKKyAgICBHZXR0ZXJGdW5jdGlvbiBtX2dldHRlcjsKKyAg
ICBTZXR0ZXJGdW5jdGlvbiBtX3NldHRlcjsKKyAgICBJbml0aWFsRnVuY3Rpb24gbV9pbml0aWFs
OwogfTsKIAogLy8gQ1NTUHJvcGVydHlDb2xvcgotY2xhc3MgQXBwbHlQcm9wZXJ0eUNvbG9yQmFz
ZSA6IHB1YmxpYyBBcHBseVByb3BlcnR5QmFzZSB7CitjbGFzcyBBcHBseVByb3BlcnR5Q29sb3Ig
OiBwdWJsaWMgQXBwbHlQcm9wZXJ0eUJhc2UgewogcHVibGljOgotICAgIEFwcGx5UHJvcGVydHlD
b2xvckJhc2UoY29uc3QgQ29sb3ImIChSZW5kZXJTdHlsZTo6KmdldHRlcikoKSBjb25zdCwgY29u
c3QgQ29sb3ImIChSZW5kZXJTdHlsZTo6KmRlZmF1bHRWYWx1ZSkoKSBjb25zdCwgdm9pZCAoUmVu
ZGVyU3R5bGU6OipzZXR0ZXIpKGNvbnN0IENvbG9yJikpCisgICAgdHlwZWRlZiBjb25zdCBDb2xv
ciYgKFJlbmRlclN0eWxlOjoqR2V0dGVyRnVuY3Rpb24pKCkgY29uc3Q7CisgICAgdHlwZWRlZiB2
b2lkIChSZW5kZXJTdHlsZTo6KlNldHRlckZ1bmN0aW9uKShjb25zdCBDb2xvciYpOworICAgIHR5
cGVkZWYgY29uc3QgQ29sb3ImIChSZW5kZXJTdHlsZTo6KkRlZmF1bHRGdW5jdGlvbikoKSBjb25z
dDsKKyAgICB0eXBlZGVmIENvbG9yICgqSW5pdGlhbEZ1bmN0aW9uKSgpOworCisgICAgQXBwbHlQ
cm9wZXJ0eUNvbG9yKEdldHRlckZ1bmN0aW9uIGdldHRlciwgU2V0dGVyRnVuY3Rpb24gc2V0dGVy
LCBEZWZhdWx0RnVuY3Rpb24gZGVmYXVsdEZ1bmN0aW9uLCBJbml0aWFsRnVuY3Rpb24gaW5pdGlh
bEZ1bmN0aW9uID0gMCkKICAgICAgICAgOiBtX2dldHRlcihnZXR0ZXIpCi0gICAgICAgICwgbV9k
ZWZhdWx0VmFsdWUoZGVmYXVsdFZhbHVlKQogICAgICAgICAsIG1fc2V0dGVyKHNldHRlcikKKyAg
ICAgICAgLCBtX2RlZmF1bHQoZGVmYXVsdEZ1bmN0aW9uKQorICAgICAgICAsIG1faW5pdGlhbChp
bml0aWFsRnVuY3Rpb24pCiAgICAgewogICAgIH0KKwogICAgIHZpcnR1YWwgdm9pZCBhcHBseUlu
aGVyaXRWYWx1ZShDU1NTdHlsZVNlbGVjdG9yKiBzZWxlY3RvcikgY29uc3QKICAgICB7CiAgICAg
ICAgIGNvbnN0IENvbG9yJiBjb2xvciA9IChzZWxlY3Rvci0+cGFyZW50U3R5bGUoKS0+Km1fZ2V0
dGVyKSgpOwotICAgICAgICBpZiAobV9kZWZhdWx0VmFsdWUgJiYgIWNvbG9yLmlzVmFsaWQoKSkK
LSAgICAgICAgICAgIChzZWxlY3Rvci0+c3R5bGUoKS0+Km1fc2V0dGVyKSgoc2VsZWN0b3ItPnBh
cmVudFN0eWxlKCktPiptX2RlZmF1bHRWYWx1ZSkoKSk7CisgICAgICAgIGlmIChtX2RlZmF1bHQg
JiYgIWNvbG9yLmlzVmFsaWQoKSkKKyAgICAgICAgICAgIChzZWxlY3Rvci0+c3R5bGUoKS0+Km1f
c2V0dGVyKSgoc2VsZWN0b3ItPnBhcmVudFN0eWxlKCktPiptX2RlZmF1bHQpKCkpOwogICAgICAg
ICBlbHNlCiAgICAgICAgICAgICAoc2VsZWN0b3ItPnN0eWxlKCktPiptX3NldHRlcikoY29sb3Ip
OwogICAgIH0KLSAgICB2aXJ0dWFsIHZvaWQgYXBwbHlJbml0aWFsVmFsdWUoQ1NTU3R5bGVTZWxl
Y3Rvciogc2VsZWN0b3IpIGNvbnN0Ci0gICAgewotICAgICAgICBDb2xvciBjb2xvcjsKLSAgICAg
ICAgKHNlbGVjdG9yLT5zdHlsZSgpLT4qbV9zZXR0ZXIpKGNvbG9yKTsKLSAgICB9Ci0gICAgdmly
dHVhbCB2b2lkIGFwcGx5VmFsdWUoQ1NTU3R5bGVTZWxlY3Rvciogc2VsZWN0b3IsIENTU1ZhbHVl
KiB2YWx1ZSkgY29uc3QKLSAgICB7Ci0gICAgICAgIGlmICh2YWx1ZS0+aXNQcmltaXRpdmVWYWx1
ZSgpKQotICAgICAgICAgICAgKHNlbGVjdG9yLT5zdHlsZSgpLT4qbV9zZXR0ZXIpKHNlbGVjdG9y
LT5nZXRDb2xvckZyb21QcmltaXRpdmVWYWx1ZShzdGF0aWNfY2FzdDxDU1NQcmltaXRpdmVWYWx1
ZSo+KHZhbHVlKSkpOwotICAgIH0KLXByb3RlY3RlZDoKLSAgICBjb25zdCBDb2xvciYgKFJlbmRl
clN0eWxlOjoqbV9nZXR0ZXIpKCkgY29uc3Q7Ci0gICAgY29uc3QgQ29sb3ImIChSZW5kZXJTdHls
ZTo6Km1fZGVmYXVsdFZhbHVlKSgpIGNvbnN0OwotICAgIHZvaWQgKFJlbmRlclN0eWxlOjoqbV9z
ZXR0ZXIpKGNvbnN0IENvbG9yJik7Ci19OwotCi1jbGFzcyBBcHBseVByb3BlcnR5Q29sb3IgOiBw
dWJsaWMgQXBwbHlQcm9wZXJ0eUNvbG9yQmFzZSB7Ci1wdWJsaWM6Ci0gICAgQXBwbHlQcm9wZXJ0
eUNvbG9yKGNvbnN0IENvbG9yJiAoUmVuZGVyU3R5bGU6OipnZXR0ZXIpKCkgY29uc3QsIHZvaWQg
KFJlbmRlclN0eWxlOjoqc2V0dGVyKShjb25zdCBDb2xvciYpLCBDb2xvciAoKmluaXRpYWxWYWx1
ZSkoKSkKLSAgICAgICAgOiBBcHBseVByb3BlcnR5Q29sb3JCYXNlKGdldHRlciwgMCwgc2V0dGVy
KQotICAgICAgICAsIG1faW5pdGlhbFZhbHVlKGluaXRpYWxWYWx1ZSkKLSAgICB7Ci0gICAgfQog
CiAgICAgdmlydHVhbCB2b2lkIGFwcGx5SW5pdGlhbFZhbHVlKENTU1N0eWxlU2VsZWN0b3IqIHNl
bGVjdG9yKSBjb25zdAogICAgIHsKLSAgICAgICAgKHNlbGVjdG9yLT5zdHlsZSgpLT4qbV9zZXR0
ZXIpKG1faW5pdGlhbFZhbHVlKCkpOworICAgICAgICAoc2VsZWN0b3ItPnN0eWxlKCktPiptX3Nl
dHRlcikobV9pbml0aWFsID8gbV9pbml0aWFsKCkgOiBDb2xvcigpKTsKICAgICB9CiAKICAgICB2
aXJ0dWFsIHZvaWQgYXBwbHlWYWx1ZShDU1NTdHlsZVNlbGVjdG9yKiBzZWxlY3RvciwgQ1NTVmFs
dWUqIHZhbHVlKSBjb25zdAogICAgIHsKICAgICAgICAgaWYgKCF2YWx1ZS0+aXNQcmltaXRpdmVW
YWx1ZSgpKQogICAgICAgICAgICAgcmV0dXJuOwotCi0gICAgICAgIGlmICgoc3RhdGljX2Nhc3Q8
Q1NTUHJpbWl0aXZlVmFsdWUqPih2YWx1ZSkpLT5nZXRJZGVudCgpID09IENTU1ZhbHVlQ3VycmVu
dGNvbG9yKQorICAgICAgICBDU1NQcmltaXRpdmVWYWx1ZSogcHJpbWl0aXZlVmFsdWUgPSBzdGF0
aWNfY2FzdDxDU1NQcmltaXRpdmVWYWx1ZSo+KHZhbHVlKTsKKyAgICAgICAgaWYgKG1faW5pdGlh
bCAmJiBwcmltaXRpdmVWYWx1ZS0+Z2V0SWRlbnQoKSA9PSBDU1NWYWx1ZUN1cnJlbnRjb2xvcikK
ICAgICAgICAgICAgIGFwcGx5SW5oZXJpdFZhbHVlKHNlbGVjdG9yKTsKICAgICAgICAgZWxzZQot
ICAgICAgICAgICAgQXBwbHlQcm9wZXJ0eUNvbG9yQmFzZTo6YXBwbHlWYWx1ZShzZWxlY3Rvciwg
dmFsdWUpOworICAgICAgICAgICAgKHNlbGVjdG9yLT5zdHlsZSgpLT4qbV9zZXR0ZXIpKHNlbGVj
dG9yLT5nZXRDb2xvckZyb21QcmltaXRpdmVWYWx1ZShwcmltaXRpdmVWYWx1ZSkpOwogICAgIH0K
LXByb3RlY3RlZDoKLSAgICBDb2xvciAoKm1faW5pdGlhbFZhbHVlKSgpOworCitwcml2YXRlOgor
ICAgIEdldHRlckZ1bmN0aW9uIG1fZ2V0dGVyOworICAgIFNldHRlckZ1bmN0aW9uIG1fc2V0dGVy
OworICAgIERlZmF1bHRGdW5jdGlvbiBtX2RlZmF1bHQ7CisgICAgSW5pdGlhbEZ1bmN0aW9uIG1f
aW5pdGlhbDsKIH07CiAKIC8vIENTU1Byb3BlcnR5RGlyZWN0aW9uCkBAIC0yOTQsNyArMjg2LDcg
QEAgQ1NTU3R5bGVBcHBseVByb3BlcnR5OjpDU1NTdHlsZUFwcGx5UHJvcAogICAgIGZvciAoaW50
IGkgPSAwOyBpIDwgbnVtQ1NTUHJvcGVydGllczsgKytpKQogICAgICAgIG1fcHJvcGVydHlNYXBb
aV0gPSAwOwogCi0gICAgc2V0UHJvcGVydHlWYWx1ZShDU1NQcm9wZXJ0eUNvbG9yLCBuZXcgQXBw
bHlQcm9wZXJ0eUNvbG9yKCZSZW5kZXJTdHlsZTo6Y29sb3IsICZSZW5kZXJTdHlsZTo6c2V0Q29s
b3IsIFJlbmRlclN0eWxlOjppbml0aWFsQ29sb3IpKTsKKyAgICBzZXRQcm9wZXJ0eVZhbHVlKENT
U1Byb3BlcnR5Q29sb3IsIG5ldyBBcHBseVByb3BlcnR5Q29sb3IoJlJlbmRlclN0eWxlOjpjb2xv
ciwgJlJlbmRlclN0eWxlOjpzZXRDb2xvciwgMCwgUmVuZGVyU3R5bGU6OmluaXRpYWxDb2xvcikp
OwogICAgIHNldFByb3BlcnR5VmFsdWUoQ1NTUHJvcGVydHlEaXJlY3Rpb24sIG5ldyBBcHBseVBy
b3BlcnR5RGlyZWN0aW9uKCZSZW5kZXJTdHlsZTo6ZGlyZWN0aW9uLCAmUmVuZGVyU3R5bGU6OnNl
dERpcmVjdGlvbiwgUmVuZGVyU3R5bGU6OmluaXRpYWxEaXJlY3Rpb24pKTsKIAogICAgIHNldFBy
b3BlcnR5VmFsdWUoQ1NTUHJvcGVydHlCYWNrZ3JvdW5kQXR0YWNobWVudCwgbmV3IEFwcGx5UHJv
cGVydHlGaWxsTGF5ZXI8RUZpbGxBdHRhY2htZW50PihDU1NQcm9wZXJ0eUJhY2tncm91bmRBdHRh
Y2htZW50LCBCYWNrZ3JvdW5kRmlsbExheWVyLCAmUmVuZGVyU3R5bGU6OmFjY2Vzc0JhY2tncm91
bmRMYXllcnMsICZSZW5kZXJTdHlsZTo6YmFja2dyb3VuZExheWVycywKQEAgLTM1NSwyNyArMzQ3
LDI3IEBAIENTU1N0eWxlQXBwbHlQcm9wZXJ0eTo6Q1NTU3R5bGVBcHBseVByb3AKICAgICAgICAg
ICAgICAgICAgICAgJkZpbGxMYXllcjo6aXNSZXBlYXRZU2V0LCAmRmlsbExheWVyOjpyZXBlYXRZ
LCAmRmlsbExheWVyOjpzZXRSZXBlYXRZLCAmRmlsbExheWVyOjpjbGVhclJlcGVhdFksICZGaWxs
TGF5ZXI6OmluaXRpYWxGaWxsUmVwZWF0WSwgJkNTU1N0eWxlU2VsZWN0b3I6Om1hcEZpbGxSZXBl
YXRZKSk7CiAgICAgc2V0UHJvcGVydHlWYWx1ZShDU1NQcm9wZXJ0eVdlYmtpdE1hc2tSZXBlYXQs
IG5ldyBBcHBseVByb3BlcnR5RXhwYW5kaW5nU3VwcHJlc3NWYWx1ZShwcm9wZXJ0eVZhbHVlKENT
U1Byb3BlcnR5QmFja2dyb3VuZFJlcGVhdFgpLCBwcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5QmFj
a2dyb3VuZFJlcGVhdFkpKSk7CiAKLSAgICBzZXRQcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5QmFj
a2dyb3VuZENvbG9yLCBuZXcgQXBwbHlQcm9wZXJ0eUNvbG9yQmFzZSgmUmVuZGVyU3R5bGU6OmJh
Y2tncm91bmRDb2xvciwgMCwgJlJlbmRlclN0eWxlOjpzZXRCYWNrZ3JvdW5kQ29sb3IpKTsKLSAg
ICBzZXRQcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5Qm9yZGVyQm90dG9tQ29sb3IsIG5ldyBBcHBs
eVByb3BlcnR5Q29sb3JCYXNlKCZSZW5kZXJTdHlsZTo6Ym9yZGVyQm90dG9tQ29sb3IsICZSZW5k
ZXJTdHlsZTo6Y29sb3IsICZSZW5kZXJTdHlsZTo6c2V0Qm9yZGVyQm90dG9tQ29sb3IpKTsKLSAg
ICBzZXRQcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5Qm9yZGVyTGVmdENvbG9yLCBuZXcgQXBwbHlQ
cm9wZXJ0eUNvbG9yQmFzZSgmUmVuZGVyU3R5bGU6OmJvcmRlckxlZnRDb2xvciwgJlJlbmRlclN0
eWxlOjpjb2xvciwgJlJlbmRlclN0eWxlOjpzZXRCb3JkZXJMZWZ0Q29sb3IpKTsKLSAgICBzZXRQ
cm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5Qm9yZGVyUmlnaHRDb2xvciwgbmV3IEFwcGx5UHJvcGVy
dHlDb2xvckJhc2UoJlJlbmRlclN0eWxlOjpib3JkZXJSaWdodENvbG9yLCAmUmVuZGVyU3R5bGU6
OmNvbG9yLCAmUmVuZGVyU3R5bGU6OnNldEJvcmRlclJpZ2h0Q29sb3IpKTsKLSAgICBzZXRQcm9w
ZXJ0eVZhbHVlKENTU1Byb3BlcnR5Qm9yZGVyVG9wQ29sb3IsIG5ldyBBcHBseVByb3BlcnR5Q29s
b3JCYXNlKCZSZW5kZXJTdHlsZTo6Ym9yZGVyVG9wQ29sb3IsICZSZW5kZXJTdHlsZTo6Y29sb3Is
ICZSZW5kZXJTdHlsZTo6c2V0Qm9yZGVyVG9wQ29sb3IpKTsKKyAgICBzZXRQcm9wZXJ0eVZhbHVl
KENTU1Byb3BlcnR5QmFja2dyb3VuZENvbG9yLCBuZXcgQXBwbHlQcm9wZXJ0eUNvbG9yKCZSZW5k
ZXJTdHlsZTo6YmFja2dyb3VuZENvbG9yLCAmUmVuZGVyU3R5bGU6OnNldEJhY2tncm91bmRDb2xv
ciwgMCkpOworICAgIHNldFByb3BlcnR5VmFsdWUoQ1NTUHJvcGVydHlCb3JkZXJCb3R0b21Db2xv
ciwgbmV3IEFwcGx5UHJvcGVydHlDb2xvcigmUmVuZGVyU3R5bGU6OmJvcmRlckJvdHRvbUNvbG9y
LCAmUmVuZGVyU3R5bGU6OnNldEJvcmRlckJvdHRvbUNvbG9yLCAmUmVuZGVyU3R5bGU6OmNvbG9y
KSk7CisgICAgc2V0UHJvcGVydHlWYWx1ZShDU1NQcm9wZXJ0eUJvcmRlckxlZnRDb2xvciwgbmV3
IEFwcGx5UHJvcGVydHlDb2xvcigmUmVuZGVyU3R5bGU6OmJvcmRlckxlZnRDb2xvciwgJlJlbmRl
clN0eWxlOjpzZXRCb3JkZXJMZWZ0Q29sb3IsICZSZW5kZXJTdHlsZTo6Y29sb3IpKTsKKyAgICBz
ZXRQcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5Qm9yZGVyUmlnaHRDb2xvciwgbmV3IEFwcGx5UHJv
cGVydHlDb2xvcigmUmVuZGVyU3R5bGU6OmJvcmRlclJpZ2h0Q29sb3IsICZSZW5kZXJTdHlsZTo6
c2V0Qm9yZGVyUmlnaHRDb2xvciwgJlJlbmRlclN0eWxlOjpjb2xvcikpOworICAgIHNldFByb3Bl
cnR5VmFsdWUoQ1NTUHJvcGVydHlCb3JkZXJUb3BDb2xvciwgbmV3IEFwcGx5UHJvcGVydHlDb2xv
cigmUmVuZGVyU3R5bGU6OmJvcmRlclRvcENvbG9yLCAmUmVuZGVyU3R5bGU6OnNldEJvcmRlclRv
cENvbG9yLCAmUmVuZGVyU3R5bGU6OmNvbG9yKSk7CiAKICAgICBzZXRQcm9wZXJ0eVZhbHVlKENT
U1Byb3BlcnR5Qm9yZGVyVG9wU3R5bGUsIG5ldyBBcHBseVByb3BlcnR5RGVmYXVsdDxFQm9yZGVy
U3R5bGU+KCZSZW5kZXJTdHlsZTo6Ym9yZGVyVG9wU3R5bGUsICZSZW5kZXJTdHlsZTo6c2V0Qm9y
ZGVyVG9wU3R5bGUsICZSZW5kZXJTdHlsZTo6aW5pdGlhbEJvcmRlclN0eWxlKSk7CiAgICAgc2V0
UHJvcGVydHlWYWx1ZShDU1NQcm9wZXJ0eUJvcmRlclJpZ2h0U3R5bGUsIG5ldyBBcHBseVByb3Bl
cnR5RGVmYXVsdDxFQm9yZGVyU3R5bGU+KCZSZW5kZXJTdHlsZTo6Ym9yZGVyUmlnaHRTdHlsZSwg
JlJlbmRlclN0eWxlOjpzZXRCb3JkZXJSaWdodFN0eWxlLCAmUmVuZGVyU3R5bGU6OmluaXRpYWxC
b3JkZXJTdHlsZSkpOwogICAgIHNldFByb3BlcnR5VmFsdWUoQ1NTUHJvcGVydHlCb3JkZXJCb3R0
b21TdHlsZSwgbmV3IEFwcGx5UHJvcGVydHlEZWZhdWx0PEVCb3JkZXJTdHlsZT4oJlJlbmRlclN0
eWxlOjpib3JkZXJCb3R0b21TdHlsZSwgJlJlbmRlclN0eWxlOjpzZXRCb3JkZXJCb3R0b21TdHls
ZSwgJlJlbmRlclN0eWxlOjppbml0aWFsQm9yZGVyU3R5bGUpKTsKICAgICBzZXRQcm9wZXJ0eVZh
bHVlKENTU1Byb3BlcnR5Qm9yZGVyTGVmdFN0eWxlLCBuZXcgQXBwbHlQcm9wZXJ0eURlZmF1bHQ8
RUJvcmRlclN0eWxlPigmUmVuZGVyU3R5bGU6OmJvcmRlckxlZnRTdHlsZSwgJlJlbmRlclN0eWxl
OjpzZXRCb3JkZXJMZWZ0U3R5bGUsICZSZW5kZXJTdHlsZTo6aW5pdGlhbEJvcmRlclN0eWxlKSk7
CiAKLSAgICBzZXRQcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5T3V0bGluZUNvbG9yLCBuZXcgQXBw
bHlQcm9wZXJ0eUNvbG9yQmFzZSgmUmVuZGVyU3R5bGU6Om91dGxpbmVDb2xvciwgJlJlbmRlclN0
eWxlOjpjb2xvciwgJlJlbmRlclN0eWxlOjpzZXRPdXRsaW5lQ29sb3IpKTsKKyAgICBzZXRQcm9w
ZXJ0eVZhbHVlKENTU1Byb3BlcnR5T3V0bGluZUNvbG9yLCBuZXcgQXBwbHlQcm9wZXJ0eUNvbG9y
KCZSZW5kZXJTdHlsZTo6b3V0bGluZUNvbG9yLCAmUmVuZGVyU3R5bGU6OnNldE91dGxpbmVDb2xv
ciwgJlJlbmRlclN0eWxlOjpjb2xvcikpOwogCiAgICAgc2V0UHJvcGVydHlWYWx1ZShDU1NQcm9w
ZXJ0eU92ZXJmbG93WCwgbmV3IEFwcGx5UHJvcGVydHlEZWZhdWx0PEVPdmVyZmxvdz4oJlJlbmRl
clN0eWxlOjpvdmVyZmxvd1gsICZSZW5kZXJTdHlsZTo6c2V0T3ZlcmZsb3dYLCAmUmVuZGVyU3R5
bGU6OmluaXRpYWxPdmVyZmxvd1gpKTsKICAgICBzZXRQcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5
T3ZlcmZsb3dZLCBuZXcgQXBwbHlQcm9wZXJ0eURlZmF1bHQ8RU92ZXJmbG93PigmUmVuZGVyU3R5
bGU6Om92ZXJmbG93WSwgJlJlbmRlclN0eWxlOjpzZXRPdmVyZmxvd1ksICZSZW5kZXJTdHlsZTo6
aW5pdGlhbE92ZXJmbG93WSkpOwogICAgIHNldFByb3BlcnR5VmFsdWUoQ1NTUHJvcGVydHlPdmVy
ZmxvdywgbmV3IEFwcGx5UHJvcGVydHlFeHBhbmRpbmcocHJvcGVydHlWYWx1ZShDU1NQcm9wZXJ0
eU92ZXJmbG93WCksIHByb3BlcnR5VmFsdWUoQ1NTUHJvcGVydHlPdmVyZmxvd1kpKSk7CiAKLSAg
ICBzZXRQcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5V2Via2l0Q29sdW1uUnVsZUNvbG9yLCBuZXcg
QXBwbHlQcm9wZXJ0eUNvbG9yQmFzZSgmUmVuZGVyU3R5bGU6OmNvbHVtblJ1bGVDb2xvciwgJlJl
bmRlclN0eWxlOjpjb2xvciwgJlJlbmRlclN0eWxlOjpzZXRDb2x1bW5SdWxlQ29sb3IpKTsKLSAg
ICBzZXRQcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5V2Via2l0VGV4dEVtcGhhc2lzQ29sb3IsIG5l
dyBBcHBseVByb3BlcnR5Q29sb3JCYXNlKCZSZW5kZXJTdHlsZTo6dGV4dEVtcGhhc2lzQ29sb3Is
ICZSZW5kZXJTdHlsZTo6Y29sb3IsICZSZW5kZXJTdHlsZTo6c2V0VGV4dEVtcGhhc2lzQ29sb3Ip
KTsKLSAgICBzZXRQcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5V2Via2l0VGV4dEZpbGxDb2xvciwg
bmV3IEFwcGx5UHJvcGVydHlDb2xvckJhc2UoJlJlbmRlclN0eWxlOjp0ZXh0RmlsbENvbG9yLCAm
UmVuZGVyU3R5bGU6OmNvbG9yLCAmUmVuZGVyU3R5bGU6OnNldFRleHRGaWxsQ29sb3IpKTsKLSAg
ICBzZXRQcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5V2Via2l0VGV4dFN0cm9rZUNvbG9yLCBuZXcg
QXBwbHlQcm9wZXJ0eUNvbG9yQmFzZSgmUmVuZGVyU3R5bGU6OnRleHRTdHJva2VDb2xvciwgJlJl
bmRlclN0eWxlOjpjb2xvciwgJlJlbmRlclN0eWxlOjpzZXRUZXh0U3Ryb2tlQ29sb3IpKTsKKyAg
ICBzZXRQcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5V2Via2l0Q29sdW1uUnVsZUNvbG9yLCBuZXcg
QXBwbHlQcm9wZXJ0eUNvbG9yKCZSZW5kZXJTdHlsZTo6Y29sdW1uUnVsZUNvbG9yLCAmUmVuZGVy
U3R5bGU6OnNldENvbHVtblJ1bGVDb2xvciwgJlJlbmRlclN0eWxlOjpjb2xvcikpOworICAgIHNl
dFByb3BlcnR5VmFsdWUoQ1NTUHJvcGVydHlXZWJraXRUZXh0RW1waGFzaXNDb2xvciwgbmV3IEFw
cGx5UHJvcGVydHlDb2xvcigmUmVuZGVyU3R5bGU6OnRleHRFbXBoYXNpc0NvbG9yLCAmUmVuZGVy
U3R5bGU6OnNldFRleHRFbXBoYXNpc0NvbG9yLCAmUmVuZGVyU3R5bGU6OmNvbG9yKSk7CisgICAg
c2V0UHJvcGVydHlWYWx1ZShDU1NQcm9wZXJ0eVdlYmtpdFRleHRGaWxsQ29sb3IsIG5ldyBBcHBs
eVByb3BlcnR5Q29sb3IoJlJlbmRlclN0eWxlOjp0ZXh0RmlsbENvbG9yLCAmUmVuZGVyU3R5bGU6
OnNldFRleHRGaWxsQ29sb3IsICZSZW5kZXJTdHlsZTo6Y29sb3IpKTsKKyAgICBzZXRQcm9wZXJ0
eVZhbHVlKENTU1Byb3BlcnR5V2Via2l0VGV4dFN0cm9rZUNvbG9yLCBuZXcgQXBwbHlQcm9wZXJ0
eUNvbG9yKCZSZW5kZXJTdHlsZTo6dGV4dFN0cm9rZUNvbG9yLCAmUmVuZGVyU3R5bGU6OnNldFRl
eHRTdHJva2VDb2xvciwgJlJlbmRlclN0eWxlOjpjb2xvcikpOwogfQogCiAK
</data>
<flag name="review"
          id="84143"
          type_id="1"
          status="+"
          setter="koivisto"
    />
          </attachment>
      

    </bug>

</bugzilla>