<?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>79014</bug_id>
          
          <creation_ts>2012-02-19 23:24:13 -0800</creation_ts>
          <short_desc>Make JSCSSStyleDeclaration work directly with CSS Property ID</short_desc>
          <delta_ts>2012-03-01 17:38:40 -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>JavaScriptCore</component>
          <version>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>77271</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Benjamin Poulain">benjamin</reporter>
          <assigned_to name="Benjamin Poulain">benjamin</assigned_to>
          <cc>ggaren</cc>
    
    <cc>joepeck</cc>
    
    <cc>rniwa</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>560055</commentid>
    <comment_count>0</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2012-02-19 23:24:13 -0800</bug_when>
    <thetext>This is the first part of https://bugs.webkit.org/show_bug.cgi?id=77271

Cut the transformation propertyName -&gt; css property name -&gt; charBuffer -&gt; css property ID.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>560063</commentid>
    <comment_count>1</comment_count>
      <attachid>127769</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2012-02-19 23:46:17 -0800</bug_when>
    <thetext>Created attachment 127769
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>560275</commentid>
    <comment_count>2</comment_count>
      <attachid>127769</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2012-02-20 10:27:33 -0800</bug_when>
    <thetext>Comment on attachment 127769
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>560319</commentid>
    <comment_count>3</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2012-02-20 12:45:52 -0800</bug_when>
    <thetext>Committed r108257: &lt;http://trac.webkit.org/changeset/108257&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>569104</commentid>
    <comment_count>4</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-03-01 17:38:40 -0800</bug_when>
    <thetext>This improved DOM/Accessors.html&apos;s score by roughly 45%:
http://webkit-perf.appspot.com/graph.html#tests=[[3113,2001,3001],[3113,2001,173262],[3113,2001,100137],[3113,2001,32196]]&amp;sel=1329680210806,1329829390662.115&amp;displayrange=30&amp;datatype=running

What an excellent work!</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>127769</attachid>
            <date>2012-02-19 23:46:17 -0800</date>
            <delta_ts>2012-02-20 10:27:32 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-79014-20120219234615.patch</filename>
            <type>text/plain</type>
            <size>14267</size>
            <attacher name="Benjamin Poulain">benjamin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA4MTkxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzcyOWNjNGFhNWM0ZmMw
MWFmNTU2OTQwM2U2ZWQ3NTFlYjFjMWRkMi4uNmVjZjZkOGI3YWM2NGNiZTc3MGU0NzkxMzQxMjUw
OTFkYjMzNTU3NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ1IEBACisyMDEyLTAyLTE5ICBCZW5q
YW1pbiBQb3VsYWluICA8YmVuamFtaW5Ad2Via2l0Lm9yZz4KKworICAgICAgICBNYWtlIEpTQ1NT
U3R5bGVEZWNsYXJhdGlvbiB3b3JrIGRpcmVjdGx5IHdpdGggQ1NTIFByb3BlcnR5IElECisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03OTAxNAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFByZXZpb3VzbHksIGFj
Y2Vzc2luZyB0aGUgQ1NTIHByb3BlcnR5IHdhcyBkb25lIGJ5IGNvbnZlcnRpbmcgZnJvbQorICAg
ICAgICB0aGUgSmF2YVNjcmlwdCBuYW1lIHRvIHRoZSBDU1MgbmFtZSwgdGhlbiBjb252ZXJ0aW5n
IHRoYXQgbmFtZSB0byBhIGxvd2VyY2FzZQorICAgICAgICBjaGFyYWN0ZXIgYXJyYXksIGFuZCBm
aW5hbGx5IGdldHRpbmcgdGhlIENTUyBwcm9wZXJ0eSBJRC4KKworICAgICAgICBUaGlzIHBhdGNo
IGN1dCB0aGUgaW5kaXJlY3Rpb24gYW5kIG1ha2UgdGhlIGNvZGUgZ28gZGlyZWN0bHkgZnJvbSB0
aGUKKyAgICAgICAgSmF2YVNjcmlwdCBuYW1lIGNvbnZlcnNpb24gdG8gdGhlIENTUyBwcm9wZXJ0
eSBJRC4KKworICAgICAgICBUaGlzIGltcHJvdmVzIHRoZSBwZXJmb3JtYW5jZSBtYWlubHkgZHVl
IHRvIHRoZSBmb2xsb3dpbmc6CisgICAgICAgIC1hdm9pZCBkeW5hbWljIG1lbW9yeSBhbGxvY2F0
aW9uCisgICAgICAgIC1jdXQgdGhlIGNvbnZlcnNpb24gZWFybHkgd2hlbiBwb3NzaWJsZQorICAg
ICAgICAtZG8gbm90IHBhcnNlIHRoZSBzdHJpbmcgdHdpY2UKKyAgICAgICAgVGhlIHByZXZpb3Vz
IGZhc3QtcGF0aCBvcHRpbWl6YXRpb24gd2FzIHJlbW92ZWQgYmVjYXVzZSBpdCBpcyBubyBsb25n
ZXIKKyAgICAgICAgbmVjZXNzYXJ5IHdpdGggdGhpcyBjaGFuZ2UuCisKKyAgICAgICAgVGhlIGlt
cHJvdmVtZW50IGFyZSB0aGUgZm9sbG93aW5nOgorICAgICAgICAtcHJldmlvdXMgZmFzdC1wYXRo
OiBubyBjaGFuZ2UKKyAgICAgICAgLXByZXZpb3VzIHNsb3ctcGF0aDogfjMgdGltZXMgZmFzdGVy
CisKKyAgICAgICAgVGVzdDogZmFzdC9kb20vQ1NTU3R5bGVEZWNsYXJhdGlvbi9hY2Nlc3MtbG9u
Z2VzdC1jc3MtcHJvcGVydHkuaHRtbAorICAgICAgICBUaGlzIGp1c3QgdGVzdCB0aGUgZWRnZSBj
YXNlIG9mIENTU1Byb3BlcnR5TmFtZS4KKworICAgICAgICAqIGJpbmRpbmdzL2pzL0pTQ1NTU3R5
bGVEZWNsYXJhdGlvbkN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjp3cml0ZVdlYktpdFBy
ZWZpeCk6CisgICAgICAgIChXZWJDb3JlOjp3cml0ZUVwdWJQcmVmaXgpOgorICAgICAgICAoV2Vi
Q29yZTo6Y3NzUHJvcGVydHlJREZvckpTQ1NTUHJvcGVydHlOYW1lKToKKyAgICAgICAgKFdlYkNv
cmU6OmlzQ1NTUHJvcGVydHlOYW1lKToKKyAgICAgICAgKFdlYkNvcmU6OkpTQ1NTU3R5bGVEZWNs
YXJhdGlvbjo6bmFtZUdldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpKU0NTU1N0eWxlRGVjbGFy
YXRpb246OnB1dERlbGVnYXRlKToKKyAgICAgICAgKiBjc3MvQ1NTUGFyc2VyLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OmNzc1Byb3BlcnR5SUQpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAg
IChXZWJDb3JlOjpjc3NQcm9wZXJ0eU5hbWVJT1NBbGlhc2luZyk6CisgICAgICAgICogY3NzL0NT
U1BhcnNlci5oOgorICAgICAgICAoV2ViQ29yZSk6CisKIDIwMTItMDItMTkgIEthbGV2IExlbWJl
ciAgPGthbGV2bGVtYmVyQGdtYWlsLmNvbT4KIAogICAgICAgICBbR1RLXSBGaXggYnVpbGQgb24g
cGxhdGZvcm1zIHdoZXJlIFVDaGFyIGlzIHdjaGFyX3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0pTQ1NTU3R5bGVEZWNsYXJhdGlvbkN1c3RvbS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NTU1N0eWxlRGVjbGFyYXRpb25DdXN0b20uY3BwCmluZGV4
IDY2OTM2ZWQzNDgzNjVjMmNhZjNiMGNkNTBmYzA5ZDQxOTQ4YTYyZGMuLjg0ZjMzODZkZWFlNDli
NjE1NjMzNmE1Nzc1MTM1YWUzZTRjYjhmZDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTQ1NTU3R5bGVEZWNsYXJhdGlvbkN1c3RvbS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNDU1NTdHlsZURlY2xhcmF0aW9uQ3VzdG9tLmNwcApAQCAtMzAs
NiArMzAsNyBAQAogI2luY2x1ZGUgIkNTU1ByaW1pdGl2ZVZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NT
UHJvcGVydHlOYW1lcy5oIgogI2luY2x1ZGUgIkNTU1ZhbHVlLmgiCisjaW5jbHVkZSAiSGFzaFRv
b2xzLmgiCiAjaW5jbHVkZSAiSlNDU1NWYWx1ZS5oIgogI2luY2x1ZGUgIkpTTm9kZS5oIgogI2lu
Y2x1ZGUgIlBsYXRmb3JtU3RyaW5nLmgiCkBAIC0xMzgsNDYgKzEzOSw1MSBAQCBzdGF0aWMgUHJv
cGVydHlOYW1lUHJlZml4IGdldENTU1Byb3BlcnR5TmFtZVByZWZpeChjb25zdCBTdHJpbmdJbXBs
JiBwcm9wZXJ0eU5hbQogICAgIHJldHVybiBQcm9wZXJ0eU5hbWVQcmVmaXhOb25lOwogfQogCi10
ZW1wbGF0ZTx0eXBlbmFtZSBDaGFyYWN0ZXJUeXBlPgotc3RhdGljIGlubGluZSBib29sIGNvbnRh
aW5zQVNDSUlVcHBlckNoYXIoY29uc3QgQ2hhcmFjdGVyVHlwZSogc3RyaW5nLCBzaXplX3QgbGVu
Z3RoKQorc3RhdGljIGlubGluZSB2b2lkIHdyaXRlV2ViS2l0UHJlZml4KGNoYXIqJiBidWZmZXIp
CiB7Ci0gICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IGxlbmd0aDsgKytpKSB7Ci0gICAgICAg
IGlmIChpc0FTQ0lJVXBwZXIoc3RyaW5nW2ldKSkKLSAgICAgICAgICAgIHJldHVybiB0cnVlOwot
ICAgIH0KLSAgICByZXR1cm4gZmFsc2U7CisgICAgKmJ1ZmZlcisrID0gJy0nOworICAgICpidWZm
ZXIrKyA9ICd3JzsKKyAgICAqYnVmZmVyKysgPSAnZSc7CisgICAgKmJ1ZmZlcisrID0gJ2InOwor
ICAgICpidWZmZXIrKyA9ICdrJzsKKyAgICAqYnVmZmVyKysgPSAnaSc7CisgICAgKmJ1ZmZlcisr
ID0gJ3QnOworICAgICpidWZmZXIrKyA9ICctJzsKIH0KIAotc3RhdGljIGlubGluZSBib29sIGNv
bnRhaW5zQVNDSUlVcHBlckNoYXIoY29uc3QgU3RyaW5nSW1wbCYgc3RyaW5nKQorc3RhdGljIGlu
bGluZSB2b2lkIHdyaXRlRXB1YlByZWZpeChjaGFyKiYgYnVmZmVyKQogewotICAgIGlmIChzdHJp
bmcuaXM4Qml0KCkpCi0gICAgICAgIHJldHVybiBjb250YWluc0FTQ0lJVXBwZXJDaGFyKHN0cmlu
Zy5jaGFyYWN0ZXJzOCgpLCBzdHJpbmcubGVuZ3RoKCkpOwotICAgIHJldHVybiBjb250YWluc0FT
Q0lJVXBwZXJDaGFyKHN0cmluZy5jaGFyYWN0ZXJzMTYoKSwgc3RyaW5nLmxlbmd0aCgpKTsKKyAg
ICAqYnVmZmVyKysgPSAnLSc7CisgICAgKmJ1ZmZlcisrID0gJ2UnOworICAgICpidWZmZXIrKyA9
ICdwJzsKKyAgICAqYnVmZmVyKysgPSAndSc7CisgICAgKmJ1ZmZlcisrID0gJ2InOworICAgICpi
dWZmZXIrKyA9ICctJzsKIH0KIAotc3RhdGljIFN0cmluZyBjc3NQcm9wZXJ0eU5hbWUoY29uc3Qg
SWRlbnRpZmllciYgcHJvcGVydHlOYW1lLCBib29sKiBoYWRQaXhlbE9yUG9zUHJlZml4ID0gMCkK
K3N0YXRpYyBpbnQgY3NzUHJvcGVydHlJREZvckpTQ1NTUHJvcGVydHlOYW1lKGNvbnN0IElkZW50
aWZpZXImIHByb3BlcnR5TmFtZSwgYm9vbCogaGFkUGl4ZWxPclBvc1ByZWZpeCA9IDApCiB7CiAg
ICAgaWYgKGhhZFBpeGVsT3JQb3NQcmVmaXgpCiAgICAgICAgICpoYWRQaXhlbE9yUG9zUHJlZml4
ID0gZmFsc2U7CiAKICAgICB1bnNpZ25lZCBsZW5ndGggPSBwcm9wZXJ0eU5hbWUubGVuZ3RoKCk7
CiAgICAgaWYgKCFsZW5ndGgpCi0gICAgICAgIHJldHVybiBTdHJpbmcoKTsKKyAgICAgICAgcmV0
dXJuIDA7CiAKICAgICBTdHJpbmdJbXBsKiBwcm9wZXJ0eU5hbWVTdHJpbmcgPSBwcm9wZXJ0eU5h
bWUuaW1wbCgpOwotICAgIC8vIElmIHRoZXJlIGlzIG5vIHVwcGVyY2FzZSBjaGFyYWN0ZXIgaW4g
dGhlIHByb3BlcnR5TmFtZSwgdGhlcmUgY2FuCi0gICAgLy8gYmUgbm8gcHJlZml4LCBub3IgZXh0
ZW5zaW9uIGFuZCB3ZSBjYW4gcmV0dXJuIHRoZSBzYW1lIHN0cmluZy4KLSAgICBpZiAoIWNvbnRh
aW5zQVNDSUlVcHBlckNoYXIoKnByb3BlcnR5TmFtZVN0cmluZykpCi0gICAgICAgIHJldHVybiBT
dHJpbmcocHJvcGVydHlOYW1lU3RyaW5nKTsKLQotICAgIFN0cmluZ0J1aWxkZXIgYnVpbGRlcjsK
LSAgICBidWlsZGVyLnJlc2VydmVDYXBhY2l0eShsZW5ndGgpOworICAgIGNvbnN0IHNpemVfdCBi
dWZmZXJTaXplID0gbWF4Q1NTUHJvcGVydHlOYW1lTGVuZ3RoICsgMTsKKyAgICBjaGFyIGJ1ZmZl
cltidWZmZXJTaXplXTsKKyAgICBjaGFyKiBidWZmZXJQdHIgPSBidWZmZXI7CisgICAgY29uc3Qg
Y2hhciogbmFtZSA9IGJ1ZmZlclB0cjsKIAogICAgIHVuc2lnbmVkIGkgPSAwOworICAgIC8vIFBy
ZWZpeGVzIENTUywgUGl4ZWwsIFBvcyBhcmUgaWdub3JlZC4KKyAgICAvLyBQcmVmaXhlcyBBcHBs
ZSwgS0hUTUwgYW5kIFdlYmtpdCBhcmUgdHJhbnNwb3NlZCB0byAiLXdlYmtpdC0iLgorICAgIC8v
IFRoZSBwcmVmaXggIkVwdWIiIGJlY29tZXMgIi1lcHViLSIuCiAgICAgc3dpdGNoIChnZXRDU1NQ
cm9wZXJ0eU5hbWVQcmVmaXgoKnByb3BlcnR5TmFtZVN0cmluZykpIHsKICAgICBjYXNlIFByb3Bl
cnR5TmFtZVByZWZpeE5vbmU6CiAgICAgICAgIGlmIChpc0FTQ0lJVXBwZXIoKCpwcm9wZXJ0eU5h
bWVTdHJpbmcpWzBdKSkKLSAgICAgICAgICAgIHJldHVybiBTdHJpbmcoKTsKKyAgICAgICAgICAg
IHJldHVybiAwOwogICAgICAgICBicmVhazsKICAgICBjYXNlIFByb3BlcnR5TmFtZVByZWZpeENT
UzoKICAgICAgICAgaSArPSAzOwpAQCAtMTkzLDI4ICsxOTksNTkgQEAgc3RhdGljIFN0cmluZyBj
c3NQcm9wZXJ0eU5hbWUoY29uc3QgSWRlbnRpZmllciYgcHJvcGVydHlOYW1lLCBib29sKiBoYWRQ
aXhlbE9yUG8KICAgICAgICAgICAgICpoYWRQaXhlbE9yUG9zUHJlZml4ID0gdHJ1ZTsKICAgICAg
ICAgYnJlYWs7CiAgICAgY2FzZSBQcm9wZXJ0eU5hbWVQcmVmaXhBcHBsZToKLSAgICBjYXNlIFBy
b3BlcnR5TmFtZVByZWZpeEVwdWI6CiAgICAgY2FzZSBQcm9wZXJ0eU5hbWVQcmVmaXhLSFRNTDoK
KyAgICAgICAgd3JpdGVXZWJLaXRQcmVmaXgoYnVmZmVyUHRyKTsKKyAgICAgICAgaSArPSA1Owor
ICAgICAgICBicmVhazsKKyAgICBjYXNlIFByb3BlcnR5TmFtZVByZWZpeEVwdWI6CisgICAgICAg
IHdyaXRlRXB1YlByZWZpeChidWZmZXJQdHIpOworICAgICAgICBpICs9IDQ7CisgICAgICAgIGJy
ZWFrOwogICAgIGNhc2UgUHJvcGVydHlOYW1lUHJlZml4V2ViS2l0OgotICAgICAgICBidWlsZGVy
LmFwcGVuZCgnLScpOworICAgICAgICB3cml0ZVdlYktpdFByZWZpeChidWZmZXJQdHIpOworICAg
ICAgICBpICs9IDY7CisgICAgICAgIGJyZWFrOwogICAgIH0KIAotICAgIGJ1aWxkZXIuYXBwZW5k
KHRvQVNDSUlMb3dlcigoKnByb3BlcnR5TmFtZVN0cmluZylbaSsrXSkpOworICAgICpidWZmZXJQ
dHIrKyA9IHRvQVNDSUlMb3dlcigoKnByb3BlcnR5TmFtZVN0cmluZylbaSsrXSk7CisKKyAgICBj
aGFyKiBidWZmZXJFbmQgPSBidWZmZXJQdHIgKyBidWZmZXJTaXplOworICAgIGNoYXIqIHN0cmlu
Z0VuZCA9IGJ1ZmZlckVuZCAtIDE7CisgICAgc2l6ZV90IGJ1ZmZlclNpemVMZWZ0ID0gc3RyaW5n
RW5kIC0gYnVmZmVyUHRyOworICAgIHNpemVfdCBwcm9wZXJ0eVNpemVMZWZ0ID0gbGVuZ3RoIC0g
aTsKKyAgICBpZiAocHJvcGVydHlTaXplTGVmdCA+IGJ1ZmZlclNpemVMZWZ0KQorICAgICAgICBy
ZXR1cm4gMDsKIAogICAgIGZvciAoOyBpIDwgbGVuZ3RoOyArK2kpIHsKICAgICAgICAgVUNoYXIg
YyA9ICgqcHJvcGVydHlOYW1lU3RyaW5nKVtpXTsKLSAgICAgICAgaWYgKCFpc0FTQ0lJVXBwZXIo
YykpCi0gICAgICAgICAgICBidWlsZGVyLmFwcGVuZChjKTsKLSAgICAgICAgZWxzZQotICAgICAg
ICAgICAgYnVpbGRlci5hcHBlbmQobWFrZVN0cmluZygnLScsIHRvQVNDSUlMb3dlcihjKSkpOwor
ICAgICAgICBpZiAoIWMgfHwgYyA+PSAweDdGKQorICAgICAgICAgICAgcmV0dXJuIDA7IC8vIGls
bGVnYWwgY2hhcmFjdGVyCisgICAgICAgIGlmIChpc0FTQ0lJVXBwZXIoYykpIHsKKyAgICAgICAg
ICAgIHNpemVfdCBidWZmZXJTaXplTGVmdCA9IHN0cmluZ0VuZCAtIGJ1ZmZlclB0cjsKKyAgICAg
ICAgICAgIHNpemVfdCBwcm9wZXJ0eVNpemVMZWZ0ID0gbGVuZ3RoIC0gaSArIDE7CisgICAgICAg
ICAgICBpZiAocHJvcGVydHlTaXplTGVmdCA+IGJ1ZmZlclNpemVMZWZ0KQorICAgICAgICAgICAg
ICAgIHJldHVybiAwOworICAgICAgICAgICAgKmJ1ZmZlclB0cisrID0gJy0nOworICAgICAgICAg
ICAgKmJ1ZmZlclB0cisrID0gdG9BU0NJSUxvd2VyKGMpOworICAgICAgICB9IGVsc2UKKyAgICAg
ICAgICAgICpidWZmZXJQdHIrKyA9IGM7CisgICAgICAgIEFTU0VSVChidWZmZXJQdHIgPCBidWZm
ZXJFbmQpOwogICAgIH0KKyAgICBBU1NFUlQoYnVmZmVyUHRyIDwgYnVmZmVyRW5kKTsKKyAgICAq
YnVmZmVyUHRyID0gJ1wwJzsKIAotICAgIHJldHVybiBidWlsZGVyLnRvU3RyaW5nKCk7CisgICAg
dW5zaWduZWQgb3V0cHV0TGVuZ3RoID0gYnVmZmVyUHRyIC0gYnVmZmVyOworI2lmIFBMQVRGT1JN
KElPUykKKyAgICBjc3NQcm9wZXJ0eU5hbWVJT1NBbGlhc2luZyhidWZmZXIsIG5hbWUsIG91dHB1
dExlbmd0aCk7CisjZW5kaWYKKworICAgIGNvbnN0IFByb3BlcnR5KiBoYXNoVGFibGVFbnRyeSA9
IGZpbmRQcm9wZXJ0eShuYW1lLCBvdXRwdXRMZW5ndGgpOworICAgIHJldHVybiBoYXNoVGFibGVF
bnRyeSA/IGhhc2hUYWJsZUVudHJ5LT5pZCA6IDA7CiB9CiAKIHN0YXRpYyBib29sIGlzQ1NTUHJv
cGVydHlOYW1lKGNvbnN0IElkZW50aWZpZXImIHByb3BlcnR5SWRlbnRpZmllcikKIHsKLSAgICBy
ZXR1cm4gY3NzUHJvcGVydHlJRChjc3NQcm9wZXJ0eU5hbWUocHJvcGVydHlJZGVudGlmaWVyKSk7
CisgICAgcmV0dXJuIGNzc1Byb3BlcnR5SURGb3JKU0NTU1Byb3BlcnR5TmFtZShwcm9wZXJ0eUlk
ZW50aWZpZXIpOwogfQogCiBib29sIEpTQ1NTU3R5bGVEZWNsYXJhdGlvbjo6Y2FuR2V0SXRlbXNG
b3JOYW1lKEV4ZWNTdGF0ZSosIENTU1N0eWxlRGVjbGFyYXRpb24qLCBjb25zdCBJZGVudGlmaWVy
JiBwcm9wZXJ0eU5hbWUpCkBAIC0yMzIsOCArMjY5LDggQEAgSlNWYWx1ZSBKU0NTU1N0eWxlRGVj
bGFyYXRpb246Om5hbWVHZXR0ZXIoRXhlY1N0YXRlKiBleGVjLCBKU1ZhbHVlIHNsb3RCYXNlLCBj
b24KICAgICAvLyBwb3NpdGlvbmVkIGVsZW1lbnQuIGlmIGl0IGlzIG5vdCBhIHBvc2l0aW9uZWQg
ZWxlbWVudCwgcmV0dXJuIDAKICAgICAvLyBmcm9tIE1TSUUgZG9jdW1lbnRhdGlvbiBGSVhNRTog
SU1QTEVNRU5UIFRIQVQgKERpcmspCiAgICAgYm9vbCBwaXhlbE9yUG9zOwotICAgIFN0cmluZyBw
cm9wID0gY3NzUHJvcGVydHlOYW1lKHByb3BlcnR5TmFtZSwgJnBpeGVsT3JQb3MpOwotICAgIFJl
ZlB0cjxDU1NWYWx1ZT4gdiA9IHRoaXNPYmotPmltcGwoKS0+Z2V0UHJvcGVydHlDU1NWYWx1ZShw
cm9wKTsKKyAgICBpbnQgY3NzUHJvcGVydHlJRCA9IGNzc1Byb3BlcnR5SURGb3JKU0NTU1Byb3Bl
cnR5TmFtZShwcm9wZXJ0eU5hbWUsICZwaXhlbE9yUG9zKTsKKyAgICBSZWZQdHI8Q1NTVmFsdWU+
IHYgPSB0aGlzT2JqLT5pbXBsKCktPmdldFByb3BlcnR5Q1NTVmFsdWVJbnRlcm5hbChzdGF0aWNf
Y2FzdDxDU1NQcm9wZXJ0eUlEPihjc3NQcm9wZXJ0eUlEKSk7CiAgICAgaWYgKHYpIHsKICAgICAg
ICAgaWYgKHBpeGVsT3JQb3MgJiYgdi0+aXNQcmltaXRpdmVWYWx1ZSgpKQogICAgICAgICAgICAg
cmV0dXJuIGpzTnVtYmVyKHN0YXRpY19wb2ludGVyX2Nhc3Q8Q1NTUHJpbWl0aXZlVmFsdWU+KHYp
LT5nZXRGbG9hdFZhbHVlKENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfUFgpKTsKQEAgLTI0MiwyMiAr
Mjc5LDIxIEBAIEpTVmFsdWUgSlNDU1NTdHlsZURlY2xhcmF0aW9uOjpuYW1lR2V0dGVyKEV4ZWNT
dGF0ZSogZXhlYywgSlNWYWx1ZSBzbG90QmFzZSwgY29uCiAKICAgICAvLyBJZiB0aGUgcHJvcGVy
dHkgaXMgYSBzaG9ydGhhbmQgcHJvcGVydHkgKHN1Y2ggYXMgInBhZGRpbmciKSwgCiAgICAgLy8g
aXQgY2FuIG9ubHkgYmUgYWNjZXNzZWQgdXNpbmcgZ2V0UHJvcGVydHlWYWx1ZS4KLQotICAgIHJl
dHVybiBqc1N0cmluZyhleGVjLCB0aGlzT2JqLT5pbXBsKCktPmdldFByb3BlcnR5VmFsdWUocHJv
cCkpOworICAgIHJldHVybiBqc1N0cmluZyhleGVjLCB0aGlzT2JqLT5pbXBsKCktPmdldFByb3Bl
cnR5VmFsdWVJbnRlcm5hbChzdGF0aWNfY2FzdDxDU1NQcm9wZXJ0eUlEPihjc3NQcm9wZXJ0eUlE
KSkpOwogfQogCiBib29sIEpTQ1NTU3R5bGVEZWNsYXJhdGlvbjo6cHV0RGVsZWdhdGUoRXhlY1N0
YXRlKiBleGVjLCBjb25zdCBJZGVudGlmaWVyJiBwcm9wZXJ0eU5hbWUsIEpTVmFsdWUgdmFsdWUs
IFB1dFByb3BlcnR5U2xvdCYpCiB7CiAgICAgYm9vbCBwaXhlbE9yUG9zOwotICAgIFN0cmluZyBw
cm9wID0gY3NzUHJvcGVydHlOYW1lKHByb3BlcnR5TmFtZSwgJnBpeGVsT3JQb3MpOwotICAgIGlm
ICghY3NzUHJvcGVydHlJRChwcm9wKSkKKyAgICBpbnQgY3NzUHJvcGVydHlJRCA9IGNzc1Byb3Bl
cnR5SURGb3JKU0NTU1Byb3BlcnR5TmFtZShwcm9wZXJ0eU5hbWUsICZwaXhlbE9yUG9zKTsKKyAg
ICBpZiAoIWNzc1Byb3BlcnR5SUQpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIFN0cmlu
ZyBwcm9wVmFsdWUgPSB2YWx1ZVRvU3RyaW5nV2l0aE51bGxDaGVjayhleGVjLCB2YWx1ZSk7CiAg
ICAgaWYgKHBpeGVsT3JQb3MpCiAgICAgICAgIHByb3BWYWx1ZSArPSAicHgiOwogICAgIEV4Y2Vw
dGlvbkNvZGUgZWMgPSAwOwotICAgIGltcGwoKS0+c2V0UHJvcGVydHkocHJvcCwgcHJvcFZhbHVl
LCBlbXB0eVN0cmluZygpLCBlYyk7CisgICAgaW1wbCgpLT5zZXRQcm9wZXJ0eUludGVybmFsKHN0
YXRpY19jYXN0PENTU1Byb3BlcnR5SUQ+KGNzc1Byb3BlcnR5SUQpLCBwcm9wVmFsdWUsIGZhbHNl
LCBlYyk7CiAgICAgc2V0RE9NRXhjZXB0aW9uKGV4ZWMsIGVjKTsKICAgICByZXR1cm4gdHJ1ZTsK
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3BwIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKaW5kZXggZTJkNDY0NjhjN2MxOTM1MzE4OGVhNTA5
MmJiNzhiMDU4YjY0NGJmMS4uYzI1NzdjMDNlMGYyYzNmMzA5MmFmNjEwMWJkYmIyZGVjNWFjYjM5
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKQEAgLTkxMzgsMTQgKzkxMzgsOCBAQCBzdGF0
aWMgaW50IGNzc1Byb3BlcnR5SUQoY29uc3QgVUNoYXIqIHByb3BlcnR5TmFtZSwgdW5zaWduZWQg
bGVuZ3RoKQogICAgICAgICAgICAgbWVtY3B5KGJ1ZmZlciwgIi13ZWJraXQiLCA3KTsKICAgICAg
ICAgICAgICsrbGVuZ3RoOwogICAgICAgICB9Ci0KICNpZiBQTEFURk9STShJT1MpCi0gICAgICAg
IGlmICghc3RyY21wKGJ1ZmZlciwgIi13ZWJraXQtaHlwaGVuYXRlLWxvY2FsZSIpKSB7Ci0gICAg
ICAgICAgICAvLyBXb3JrZWQgaW4gaU9TIDQuMi4KLSAgICAgICAgICAgIGNvbnN0IGNoYXIqIGNv
bnN0IHdlYmtpdExvY2FsZSA9ICItd2Via2l0LWxvY2FsZSI7Ci0gICAgICAgICAgICBuYW1lID0g
d2Via2l0TG9jYWxlOwotICAgICAgICAgICAgbGVuZ3RoID0gc3RybGVuKHdlYmtpdExvY2FsZSk7
Ci0gICAgICAgIH0KKyAgICAgICAgY3NzUHJvcGVydHlOYW1lSU9TQWxpYXNpbmcoYnVmZmVyLCBu
YW1lLCBsZW5ndGgpOwogI2VuZGlmCiAgICAgfQogCkBAIC05MTYzLDYgKzkxNTcsMTggQEAgaW50
IGNzc1Byb3BlcnR5SUQoY29uc3QgQ1NTUGFyc2VyU3RyaW5nJiBzdHJpbmcpCiAgICAgcmV0dXJu
IGNzc1Byb3BlcnR5SUQoc3RyaW5nLmNoYXJhY3RlcnMsIHN0cmluZy5sZW5ndGgpOwogfQogCisj
aWYgUExBVEZPUk0oSU9TKQordm9pZCBjc3NQcm9wZXJ0eU5hbWVJT1NBbGlhc2luZyhjb25zdCBj
aGFyKiBwcm9wZXJ0eU5hbWUsIGNvbnN0IGNoYXIqJiBwcm9wZXJ0eU5hbWVBbGlhcywgdW5zaWdu
ZWQmIG5ld0xlbmd0aCkKK3sKKyAgICBpZiAoIXN0cmNtcChwcm9wZXJ0eU5hbWUsICItd2Via2l0
LWh5cGhlbmF0ZS1sb2NhbGUiKSkgeworICAgICAgICAvLyBXb3JrZWQgaW4gaU9TIDQuMi4KKyAg
ICAgICAgc3RhdGljIGNvbnN0IGNoYXIqIGNvbnN0IHdlYmtpdExvY2FsZSA9ICItd2Via2l0LWxv
Y2FsZSI7CisgICAgICAgIHByb3BlcnR5TmFtZUFsaWFzID0gd2Via2l0TG9jYWxlOworICAgICAg
ICBuZXdMZW5ndGggPSBzdHJsZW4od2Via2l0TG9jYWxlKTsKKyAgICB9Cit9CisjZW5kaWYKKwog
aW50IGNzc1ZhbHVlS2V5d29yZElEKGNvbnN0IENTU1BhcnNlclN0cmluZyYgc3RyaW5nKQogewog
ICAgIHVuc2lnbmVkIGxlbmd0aCA9IHN0cmluZy5sZW5ndGg7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmgK
aW5kZXggMDAzNTFlMjgxNWNlMmJkM2I0ZWNmNmNkYmNlNDJkM2ZjMjVkNDk4OC4uODdkNTJmNWY1
NmE3YjRiZWVjZGEyN2Y3NTQxMzZjYWFiMDI1MTU5NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1BhcnNlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuaApA
QCAtNDQ5LDYgKzQ0OSw5IEBAIHByaXZhdGU6CiBpbnQgY3NzUHJvcGVydHlJRChjb25zdCBDU1NQ
YXJzZXJTdHJpbmcmKTsKIGludCBjc3NQcm9wZXJ0eUlEKGNvbnN0IFN0cmluZyYpOwogaW50IGNz
c1ZhbHVlS2V5d29yZElEKGNvbnN0IENTU1BhcnNlclN0cmluZyYpOworI2lmIFBMQVRGT1JNKElP
UykKK3ZvaWQgY3NzUHJvcGVydHlOYW1lSU9TQWxpYXNpbmcoY29uc3QgY2hhciogcHJvcGVydHlO
YW1lLCBjb25zdCBjaGFyKiYgcHJvcGVydHlOYW1lQWxpYXMsIHVuc2lnbmVkJiBuZXdMZW5ndGgp
OworI2VuZGlmCiAKIGNsYXNzIFNob3J0aGFuZFNjb3BlIHsKICAgICBXVEZfTUFLRV9GQVNUX0FM
TE9DQVRFRDsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwppbmRleCBmYmYyZmVhYjg5MjkxYzU4ZGFhNzExN2FkZjBhOTlmMzQ5Mjk3M2Y3
Li5jZjRjMjUyNjhlY2JkMDA5ZmI4ZTA3NzRjM2I4YTYwN2VhNTY2MGJlIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTMgQEAKKzIwMTItMDItMTkgIEJlbmphbWluIFBvdWxhaW4gIDxiZW5qYW1pbkB3ZWJraXQu
b3JnPgorCisgICAgICAgIE1ha2UgSlNDU1NTdHlsZURlY2xhcmF0aW9uIHdvcmsgZGlyZWN0bHkg
d2l0aCBDU1MgUHJvcGVydHkgSUQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTc5MDE0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiBmYXN0L2RvbS9DU1NTdHlsZURlY2xhcmF0aW9uL2FjY2Vzcy1sb25nZXN0
LWNzcy1wcm9wZXJ0eS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0NT
U1N0eWxlRGVjbGFyYXRpb24vYWNjZXNzLWxvbmdlc3QtY3NzLXByb3BlcnR5Lmh0bWw6IEFkZGVk
LgorCiAyMDEyLTAyLTE5ICBSb2JlcnQgSG9nYW4gIDxyb2JlcnRAd2Via2l0Lm9yZz4KIAogICAg
ICAgICBDaHJvbWl1bSByZXN1bHRzIGZvciByMTA4MTg1CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9DU1NTdHlsZURlY2xhcmF0aW9uL2FjY2Vzcy1sb25nZXN0LWNzcy1wcm9wZXJ0
eS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9DU1NTdHlsZURlY2xhcmF0aW9u
L2FjY2Vzcy1sb25nZXN0LWNzcy1wcm9wZXJ0eS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmY2
NGQwNzJhZWJmYTk4ZGU4ZjY0OTMzZjg5NTBhOGMzMzgxMjZkZgotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvZG9tL0NTU1N0eWxlRGVjbGFyYXRpb24vYWNjZXNzLWxvbmdlc3Qt
Y3NzLXByb3BlcnR5LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEyIEBACitUaGUgdGVzdCBwYXJz
aW5nIG9mIHRoZSBib3VuZGFyeSB2YWx1ZSBieSBjaGVja2luZyB0aGUgbG9uZ2VzdCBDU1MgcHJv
cGVydHkuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVz
c2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIGdldENvbXB1dGVk
U3R5bGUoZG9jdW1lbnQuYm9keSkud2Via2l0TWF0Y2hOZWFyZXN0TWFpbEJsb2NrcXVvdGVDb2xv
ciBpcyAibWF0Y2giCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0YXJnZXQiKS5zdHls
ZS53ZWJraXRNYXRjaE5lYXJlc3RNYWlsQmxvY2txdW90ZUNvbG9yIGlzICJtYXRjaCIKK1BBU1Mg
ZG9jdW1lbnQuYm9keS5zdHlsZS53ZWJraXRNYXRjaE5lYXJlc3RNYWlsQmxvY2txdW90ZUNvbG9y
IGlzICIiCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUK
KwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vQ1NTU3R5bGVEZWNsYXJhdGlvbi9h
Y2Nlc3MtbG9uZ2VzdC1jc3MtcHJvcGVydHkuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0NT
U1N0eWxlRGVjbGFyYXRpb24vYWNjZXNzLWxvbmdlc3QtY3NzLXByb3BlcnR5Lmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uNDFkNTExZTNkOTI5MDFkOWE4M2M5OTYxNzAzYWZlODg1NzY4YjVhYQotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0NTU1N0eWxlRGVjbGFyYXRpb24vYWNjZXNz
LWxvbmdlc3QtY3NzLXByb3BlcnR5Lmh0bWwKQEAgLTAsMCArMSwyNCBAQAorPGh0bWw+Cis8aGVh
ZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2Ny
aXB0PgorPHN0eWxlPgorKiB7Cistd2Via2l0LW1hdGNoLW5lYXJlc3QtbWFpbC1ibG9ja3F1b3Rl
LWNvbG9yOiBtYXRjaDsKK30KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgaWQ9InRh
cmdldCIgc3R5bGU9Ii13ZWJraXQtbWF0Y2gtbmVhcmVzdC1tYWlsLWJsb2NrcXVvdGUtY29sb3I6
IG1hdGNoOyI+PC9kaXY+Cis8IS0tCitOb3RlIGZvciB1cGRhdGluZyB0aGUgdGVzdDoKK1BsZWFz
ZSByZXBsYWNlICctd2Via2l0LW1hdGNoLW5lYXJlc3QtbWFpbC1ibG9ja3F1b3RlLWNvbG9yJyBi
eSB0aGUgbG9uZ2VzdCBuYW1lIGlmICctd2Via2l0LW1hdGNoLW5lYXJlc3QtbWFpbC1ibG9ja3F1
b3RlLWNvbG9yJyBpcyByZW1vdmVkLgorLS0+Cis8c2NyaXB0PgorZGVzY3JpcHRpb24oIlRoZSB0
ZXN0IHBhcnNpbmcgb2YgdGhlIGJvdW5kYXJ5IHZhbHVlIGJ5IGNoZWNraW5nIHRoZSBsb25nZXN0
IENTUyBwcm9wZXJ0eS4iKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygnZ2V0Q29tcHV0ZWRTdHls
ZShkb2N1bWVudC5ib2R5KS53ZWJraXRNYXRjaE5lYXJlc3RNYWlsQmxvY2txdW90ZUNvbG9yJywg
J21hdGNoJyk7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJ0YXJnZXQiKS5zdHlsZS53ZWJraXRNYXRjaE5lYXJlc3RNYWlsQmxvY2txdW90ZUNvbG9yJywg
J21hdGNoJyk7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ2RvY3VtZW50LmJvZHkuc3R5bGUud2Vi
a2l0TWF0Y2hOZWFyZXN0TWFpbEJsb2NrcXVvdGVDb2xvcicsICcnKTsKKzwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9Ii4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0Pgor
PC9ib2R5PgorPC9odG1sPgo=
</data>
<flag name="review"
          id="129987"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
      

    </bug>

</bugzilla>