<?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>109888</bug_id>
          
          <creation_ts>2013-02-14 22:02:06 -0800</creation_ts>
          <short_desc>ElementData: Move leafy things out of the base class.</short_desc>
          <delta_ts>2013-02-26 00:30:47 -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>DOM</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>
          <dependson>110784</dependson>
          <blocked>109505</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Andreas Kling">kling</reporter>
          <assigned_to name="Andreas Kling">kling</assigned_to>
          <cc>abarth</cc>
    
    <cc>kling</cc>
    
    <cc>koivisto</cc>
    
    <cc>roger_fong</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>833687</commentid>
    <comment_count>0</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2013-02-14 22:02:06 -0800</bug_when>
    <thetext>We should move stuff from ElementData to UniqueElementData or ShareableElementData where it makes sense.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>833688</commentid>
    <comment_count>1</comment_count>
      <attachid>188479</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2013-02-14 22:05:19 -0800</bug_when>
    <thetext>Created attachment 188479
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834147</commentid>
    <comment_count>2</comment_count>
      <attachid>188479</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-15 10:29:54 -0800</bug_when>
    <thetext>Comment on attachment 188479
Patch

Clearing flags on attachment: 188479

Committed r143014: &lt;http://trac.webkit.org/changeset/143014&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834148</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-15 10:29:58 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834383</commentid>
    <comment_count>4</comment_count>
    <who name="Roger Fong">roger_fong</who>
    <bug_when>2013-02-15 14:38:17 -0800</bug_when>
    <thetext>Hello, this broke the Windows build.
http://build.webkit.org/builders/Apple%20Win%20Release%20%28Build%29/builds/44333/steps/compile-webkit/logs/stdio</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834388</commentid>
    <comment_count>5</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2013-02-15 14:44:29 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; Hello, this broke the Windows build.
&gt; http://build.webkit.org/builders/Apple%20Win%20Release%20%28Build%29/builds/44333/steps/compile-webkit/logs/stdio

Oops! Looks like it was bug 109959. I&apos;ll roll that out for now. Whatever happened to the win ews builder?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>841396</commentid>
    <comment_count>6</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-02-25 16:18:49 -0800</bug_when>
    <thetext>We&apos;re checking whether this patch caused a performance regression in bug 110784.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>841705</commentid>
    <comment_count>7</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-02-26 00:30:47 -0800</bug_when>
    <thetext>Sorry for the noise.  This patch was not the problem.  I&apos;ve re-landed it.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>188479</attachid>
            <date>2013-02-14 22:05:19 -0800</date>
            <delta_ts>2013-02-15 10:29:54 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-109888.diff</filename>
            <type>text/plain</type>
            <size>10429</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBmYjI1MzMxLi4zYTQ1NmMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzYg
QEAKKzIwMTMtMDItMTQgIEFuZHJlYXMgS2xpbmcgIDxha2xpbmdAYXBwbGUuY29tPgorCisgICAg
ICAgIEVsZW1lbnREYXRhOiBNb3ZlIGxlYWZ5IHRoaW5ncyBvdXQgb2YgdGhlIGJhc2UgY2xhc3Mu
CisgICAgICAgIDxodHRwOi8vd2Via2l0Lm9yZy9iLzEwOTg4OD4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAtIE1vdmVkIGZ1bmN0aW9ucyBmb3IgbXV0
YXRpbmcvYWRkaW5nL3JlbW92aW5nIGF0dHJpYnV0ZXMgaW50byBVbmlxdWVFbGVtZW50RGF0YS4K
KyAgICAgICAgICBBdHRlbXB0cyB0byBtb2RpZnkgc2hhcmVkIGVsZW1lbnQgZGF0YSB3aWxsIG5v
dyBmYWlsIGF0IGNvbXBpbGUtdGltZS4KKworICAgICAgICAtIFJlbW92ZWQgbXV0YWJsZUF0dHJp
YnV0ZVZlY3RvcigpIGFuZCBoYXZlIGNhbGwgc2l0ZXMgYWNjZXNzIHRoZSB2ZWN0b3IgZGlyZWN0
bHkuCisKKyAgICAgICAgLSBNb3ZlIGltbXV0YWJsZUF0dHJpYnV0ZUFycmF5KCkgdG8gU2hhcmVh
YmxlRWxlbWVudERhdGEuCisKKyAgICAgICAgLSBNb3ZlIHNvbWUgZnVuY3Rpb24gYm9kaWVzIGZy
b20gRWxlbWVudC5oIHRvIEVsZW1lbnQuY3BwIHNpbmNlIGFsbCBjbGllbnRzIGFyZSBpbiB0aGVy
ZS4KKworICAgICAgICAqIGRvbS9FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1l
bnQ6OmFkZEF0dHJpYnV0ZUludGVybmFsKToKKyAgICAgICAgKFdlYkNvcmU6OlNoYXJlYWJsZUVs
ZW1lbnREYXRhOjpTaGFyZWFibGVFbGVtZW50RGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpVbmlx
dWVFbGVtZW50RGF0YTo6bWFrZVNoYXJlYWJsZUNvcHkpOgorICAgICAgICAoV2ViQ29yZTo6VW5p
cXVlRWxlbWVudERhdGE6OmFkZEF0dHJpYnV0ZSk6CisgICAgICAgIChXZWJDb3JlOjpVbmlxdWVF
bGVtZW50RGF0YTo6cmVtb3ZlQXR0cmlidXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnRE
YXRhOjpyZXBvcnRNZW1vcnlVc2FnZSk6CisgICAgICAgIChXZWJDb3JlOjpVbmlxdWVFbGVtZW50
RGF0YTo6Z2V0QXR0cmlidXRlSXRlbSk6CisgICAgICAgIChXZWJDb3JlOjpVbmlxdWVFbGVtZW50
RGF0YTo6YXR0cmlidXRlSXRlbSk6CisgICAgICAgICogZG9tL0VsZW1lbnQuaDoKKyAgICAgICAg
KEVsZW1lbnREYXRhKToKKyAgICAgICAgKFdlYkNvcmU6OlNoYXJlYWJsZUVsZW1lbnREYXRhOjpp
bW11dGFibGVBdHRyaWJ1dGVBcnJheSk6CisgICAgICAgIChTaGFyZWFibGVFbGVtZW50RGF0YSk6
CisgICAgICAgIChVbmlxdWVFbGVtZW50RGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpFbGVtZW50
RGF0YTo6bGVuZ3RoKToKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnREYXRhOjphdHRyaWJ1dGVJ
dGVtKToKKwogMjAxMy0wMi0xNCAgSGF5YXRvIEl0byAgPGhheWF0b0BjaHJvbWl1bS5vcmc+CiAK
ICAgICAgICAgRmFjdG9yIEV2ZW50IHJldGFyZ2V0aW5nIGNvZGUuCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5j
cHAKaW5kZXggYzA1ODI5MC4uYTU4OTc1MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9t
L0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcApAQCAtMTc4
OCw3ICsxNzg4LDcgQEAgdm9pZCBFbGVtZW50OjphZGRBdHRyaWJ1dGVJbnRlcm5hbChjb25zdCBR
dWFsaWZpZWROYW1lJiBuYW1lLCBjb25zdCBBdG9taWNTdHJpbmcKIHsKICAgICBpZiAoIWluU3lu
Y2hyb25pemF0aW9uT2ZMYXp5QXR0cmlidXRlKQogICAgICAgICB3aWxsTW9kaWZ5QXR0cmlidXRl
KG5hbWUsIG51bGxBdG9tLCB2YWx1ZSk7Ci0gICAgZW5zdXJlVW5pcXVlRWxlbWVudERhdGEoKS0+
YWRkQXR0cmlidXRlKEF0dHJpYnV0ZShuYW1lLCB2YWx1ZSkpOworICAgIGVuc3VyZVVuaXF1ZUVs
ZW1lbnREYXRhKCktPmFkZEF0dHJpYnV0ZShuYW1lLCB2YWx1ZSk7CiAgICAgaWYgKCFpblN5bmNo
cm9uaXphdGlvbk9mTGF6eUF0dHJpYnV0ZSkKICAgICAgICAgZGlkQWRkQXR0cmlidXRlKG5hbWUs
IHZhbHVlKTsKIH0KQEAgLTI5MDEsNyArMjkwMSw3IEBAIFNoYXJlYWJsZUVsZW1lbnREYXRhOjpT
aGFyZWFibGVFbGVtZW50RGF0YShjb25zdCBVbmlxdWVFbGVtZW50RGF0YSYgb3RoZXIpCiAgICAg
fQogCiAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IG1fYXJyYXlTaXplOyArK2kpCi0gICAg
ICAgIG5ldyAoJnJlaW50ZXJwcmV0X2Nhc3Q8QXR0cmlidXRlKj4oJm1fYXR0cmlidXRlQXJyYXkp
W2ldKSBBdHRyaWJ1dGUoKm90aGVyLmF0dHJpYnV0ZUl0ZW0oaSkpOworICAgICAgICBuZXcgKCZy
ZWludGVycHJldF9jYXN0PEF0dHJpYnV0ZSo+KCZtX2F0dHJpYnV0ZUFycmF5KVtpXSkgQXR0cmli
dXRlKG90aGVyLm1fYXR0cmlidXRlVmVjdG9yLmF0KGkpKTsKIH0KIAogRWxlbWVudERhdGE6OkVs
ZW1lbnREYXRhKGNvbnN0IEVsZW1lbnREYXRhJiBvdGhlciwgYm9vbCBpc1VuaXF1ZSkKQEAgLTI5
NTEsMjEgKzI5NTEsMTkgQEAgUGFzc1JlZlB0cjxVbmlxdWVFbGVtZW50RGF0YT4gRWxlbWVudERh
dGE6Om1ha2VVbmlxdWVDb3B5KCkgY29uc3QKIAogUGFzc1JlZlB0cjxTaGFyZWFibGVFbGVtZW50
RGF0YT4gVW5pcXVlRWxlbWVudERhdGE6Om1ha2VTaGFyZWFibGVDb3B5KCkgY29uc3QKIHsKLSAg
ICB2b2lkKiBzbG90ID0gV1RGOjpmYXN0TWFsbG9jKHNpemVGb3JTaGFyZWFibGVFbGVtZW50RGF0
YVdpdGhBdHRyaWJ1dGVDb3VudChtdXRhYmxlQXR0cmlidXRlVmVjdG9yKCkuc2l6ZSgpKSk7Cisg
ICAgdm9pZCogc2xvdCA9IFdURjo6ZmFzdE1hbGxvYyhzaXplRm9yU2hhcmVhYmxlRWxlbWVudERh
dGFXaXRoQXR0cmlidXRlQ291bnQobV9hdHRyaWJ1dGVWZWN0b3Iuc2l6ZSgpKSk7CiAgICAgcmV0
dXJuIGFkb3B0UmVmKG5ldyAoc2xvdCkgU2hhcmVhYmxlRWxlbWVudERhdGEoKnRoaXMpKTsKIH0K
IAotdm9pZCBFbGVtZW50RGF0YTo6YWRkQXR0cmlidXRlKGNvbnN0IEF0dHJpYnV0ZSYgYXR0cmli
dXRlKQordm9pZCBVbmlxdWVFbGVtZW50RGF0YTo6YWRkQXR0cmlidXRlKGNvbnN0IFF1YWxpZmll
ZE5hbWUmIGF0dHJpYnV0ZU5hbWUsIGNvbnN0IEF0b21pY1N0cmluZyYgdmFsdWUpCiB7Ci0gICAg
QVNTRVJUKGlzVW5pcXVlKCkpOwotICAgIG11dGFibGVBdHRyaWJ1dGVWZWN0b3IoKS5hcHBlbmQo
YXR0cmlidXRlKTsKKyAgICBtX2F0dHJpYnV0ZVZlY3Rvci5hcHBlbmQoQXR0cmlidXRlKGF0dHJp
YnV0ZU5hbWUsIHZhbHVlKSk7CiB9CiAKLXZvaWQgRWxlbWVudERhdGE6OnJlbW92ZUF0dHJpYnV0
ZShzaXplX3QgaW5kZXgpCit2b2lkIFVuaXF1ZUVsZW1lbnREYXRhOjpyZW1vdmVBdHRyaWJ1dGUo
c2l6ZV90IGluZGV4KQogewotICAgIEFTU0VSVChpc1VuaXF1ZSgpKTsKICAgICBBU1NFUlRfV0lU
SF9TRUNVUklUWV9JTVBMSUNBVElPTihpbmRleCA8IGxlbmd0aCgpKTsKLSAgICBtdXRhYmxlQXR0
cmlidXRlVmVjdG9yKCkucmVtb3ZlKGluZGV4KTsKKyAgICBtX2F0dHJpYnV0ZVZlY3Rvci5yZW1v
dmUoaW5kZXgpOwogfQogCiBib29sIEVsZW1lbnREYXRhOjppc0VxdWl2YWxlbnQoY29uc3QgRWxl
bWVudERhdGEqIG90aGVyKSBjb25zdApAQCAtMjk5NSw4ICsyOTkzLDkgQEAgdm9pZCBFbGVtZW50
RGF0YTo6cmVwb3J0TWVtb3J5VXNhZ2UoTWVtb3J5T2JqZWN0SW5mbyogbWVtb3J5T2JqZWN0SW5m
bykgY29uc3QKICAgICBpbmZvLmFkZE1lbWJlcihtX2NsYXNzTmFtZXMsICJjbGFzc05hbWVzIik7
CiAgICAgaW5mby5hZGRNZW1iZXIobV9pZEZvclN0eWxlUmVzb2x1dGlvbiwgImlkRm9yU3R5bGVS
ZXNvbHV0aW9uIik7CiAgICAgaWYgKG1faXNVbmlxdWUpIHsKLSAgICAgICAgaW5mby5hZGRNZW1i
ZXIocHJlc2VudGF0aW9uQXR0cmlidXRlU3R5bGUoKSwgInByZXNlbnRhdGlvbkF0dHJpYnV0ZVN0
eWxlKCkiKTsKLSAgICAgICAgaW5mby5hZGRNZW1iZXIobXV0YWJsZUF0dHJpYnV0ZVZlY3Rvcigp
LCAibXV0YWJsZUF0dHJpYnV0ZVZlY3RvciIpOworICAgICAgICBjb25zdCBVbmlxdWVFbGVtZW50
RGF0YSogdW5pcXVlVGhpcyA9IHN0YXRpY19jYXN0PGNvbnN0IFVuaXF1ZUVsZW1lbnREYXRhKj4o
dGhpcyk7CisgICAgICAgIGluZm8uYWRkTWVtYmVyKHVuaXF1ZVRoaXMtPm1fcHJlc2VudGF0aW9u
QXR0cmlidXRlU3R5bGUsICJwcmVzZW50YXRpb25BdHRyaWJ1dGVTdHlsZSIpOworICAgICAgICBp
bmZvLmFkZE1lbWJlcih1bmlxdWVUaGlzLT5tX2F0dHJpYnV0ZVZlY3RvciwgImF0dHJpYnV0ZVZl
Y3RvciIpOwogICAgIH0KICAgICBmb3IgKHVuc2lnbmVkIGkgPSAwLCBsZW4gPSBsZW5ndGgoKTsg
aSA8IGxlbjsgaSsrKQogICAgICAgICBpbmZvLmFkZE1lbWJlcigqYXR0cmlidXRlSXRlbShpKSwg
IiphdHRyaWJ1dGVJdGVtIik7CkBAIC0zMDIxLDQgKzMwMjAsMTkgQEAgc2l6ZV90IEVsZW1lbnRE
YXRhOjpnZXRBdHRyaWJ1dGVJdGVtSW5kZXhTbG93Q2FzZShjb25zdCBBdG9taWNTdHJpbmcmIG5h
bWUsIGJvb2wKICAgICByZXR1cm4gbm90Rm91bmQ7CiB9CiAKK0F0dHJpYnV0ZSogVW5pcXVlRWxl
bWVudERhdGE6OmdldEF0dHJpYnV0ZUl0ZW0oY29uc3QgUXVhbGlmaWVkTmFtZSYgbmFtZSkKK3sK
KyAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgbGVuZ3RoKCk7ICsraSkgeworICAgICAgICBp
ZiAobV9hdHRyaWJ1dGVWZWN0b3IuYXQoaSkubmFtZSgpLm1hdGNoZXMobmFtZSkpCisgICAgICAg
ICAgICByZXR1cm4gJm1fYXR0cmlidXRlVmVjdG9yLmF0KGkpOworICAgIH0KKyAgICByZXR1cm4g
MDsKK30KKworQXR0cmlidXRlKiBVbmlxdWVFbGVtZW50RGF0YTo6YXR0cmlidXRlSXRlbSh1bnNp
Z25lZCBpbmRleCkKK3sKKyAgICBBU1NFUlRfV0lUSF9TRUNVUklUWV9JTVBMSUNBVElPTihpbmRl
eCA8IGxlbmd0aCgpKTsKKyAgICByZXR1cm4gJm1fYXR0cmlidXRlVmVjdG9yLmF0KGluZGV4KTsK
K30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
ZG9tL0VsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKaW5kZXggNGYxNDMy
ZS4uZjFkNmJmZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCkBAIC03NSwxNSArNzUsOSBAQCBwdWJsaWM6
CiAKICAgICBjb25zdCBBdHRyaWJ1dGUqIGF0dHJpYnV0ZUl0ZW0odW5zaWduZWQgaW5kZXgpIGNv
bnN0OwogICAgIGNvbnN0IEF0dHJpYnV0ZSogZ2V0QXR0cmlidXRlSXRlbShjb25zdCBRdWFsaWZp
ZWROYW1lJikgY29uc3Q7Ci0gICAgQXR0cmlidXRlKiBhdHRyaWJ1dGVJdGVtKHVuc2lnbmVkIGlu
ZGV4KTsKLSAgICBBdHRyaWJ1dGUqIGdldEF0dHJpYnV0ZUl0ZW0oY29uc3QgUXVhbGlmaWVkTmFt
ZSYpOwogICAgIHNpemVfdCBnZXRBdHRyaWJ1dGVJdGVtSW5kZXgoY29uc3QgUXVhbGlmaWVkTmFt
ZSYpIGNvbnN0OwogICAgIHNpemVfdCBnZXRBdHRyaWJ1dGVJdGVtSW5kZXgoY29uc3QgQXRvbWlj
U3RyaW5nJiBuYW1lLCBib29sIHNob3VsZElnbm9yZUF0dHJpYnV0ZUNhc2UpIGNvbnN0OwogCi0g
ICAgLy8gVGhlc2UgZnVuY3Rpb25zIGRvIG5vIGVycm9yIGNoZWNraW5nLgotICAgIHZvaWQgYWRk
QXR0cmlidXRlKGNvbnN0IEF0dHJpYnV0ZSYpOwotICAgIHZvaWQgcmVtb3ZlQXR0cmlidXRlKHNp
emVfdCBpbmRleCk7Ci0KICAgICBib29sIGhhc0lEKCkgY29uc3QgeyByZXR1cm4gIW1faWRGb3JT
dHlsZVJlc29sdXRpb24uaXNOdWxsKCk7IH0KICAgICBib29sIGhhc0NsYXNzKCkgY29uc3QgeyBy
ZXR1cm4gIW1fY2xhc3NOYW1lcy5pc051bGwoKTsgfQogCkBAIC05Miw3ICs4Niw2IEBAIHB1Ymxp
YzoKICAgICB2b2lkIHJlcG9ydE1lbW9yeVVzYWdlKE1lbW9yeU9iamVjdEluZm8qKSBjb25zdDsK
IAogICAgIGJvb2wgaXNVbmlxdWUoKSBjb25zdCB7IHJldHVybiBtX2lzVW5pcXVlOyB9Ci0gICAg
Y29uc3QgQXR0cmlidXRlKiBpbW11dGFibGVBdHRyaWJ1dGVBcnJheSgpIGNvbnN0OwogCiBwcm90
ZWN0ZWQ6CiAgICAgRWxlbWVudERhdGEoKTsKQEAgLTEyMCwyMCArMTEzLDE4IEBAIHByaXZhdGU6
CiAgICAgZnJpZW5kIGNsYXNzIFNWR0VsZW1lbnQ7CiAjZW5kaWYKIAotICAgIEF0dHJpYnV0ZSog
Z2V0QXR0cmlidXRlSXRlbShjb25zdCBBdG9taWNTdHJpbmcmIG5hbWUsIGJvb2wgc2hvdWxkSWdu
b3JlQXR0cmlidXRlQ2FzZSk7CiAgICAgY29uc3QgQXR0cmlidXRlKiBnZXRBdHRyaWJ1dGVJdGVt
KGNvbnN0IEF0b21pY1N0cmluZyYgbmFtZSwgYm9vbCBzaG91bGRJZ25vcmVBdHRyaWJ1dGVDYXNl
KSBjb25zdDsKICAgICBzaXplX3QgZ2V0QXR0cmlidXRlSXRlbUluZGV4U2xvd0Nhc2UoY29uc3Qg
QXRvbWljU3RyaW5nJiBuYW1lLCBib29sIHNob3VsZElnbm9yZUF0dHJpYnV0ZUNhc2UpIGNvbnN0
OwogCiAgICAgUGFzc1JlZlB0cjxVbmlxdWVFbGVtZW50RGF0YT4gbWFrZVVuaXF1ZUNvcHkoKSBj
b25zdDsKLQotICAgIFZlY3RvcjxBdHRyaWJ1dGUsIDQ+JiBtdXRhYmxlQXR0cmlidXRlVmVjdG9y
KCk7Ci0gICAgY29uc3QgVmVjdG9yPEF0dHJpYnV0ZSwgND4mIG11dGFibGVBdHRyaWJ1dGVWZWN0
b3IoKSBjb25zdDsKIH07CiAKIGNsYXNzIFNoYXJlYWJsZUVsZW1lbnREYXRhIDogcHVibGljIEVs
ZW1lbnREYXRhIHsKIHB1YmxpYzoKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxTaGFyZWFibGVFbGVt
ZW50RGF0YT4gY3JlYXRlV2l0aEF0dHJpYnV0ZXMoY29uc3QgVmVjdG9yPEF0dHJpYnV0ZT4mKTsK
IAorICAgIGNvbnN0IEF0dHJpYnV0ZSogaW1tdXRhYmxlQXR0cmlidXRlQXJyYXkoKSBjb25zdCB7
IHJldHVybiByZWludGVycHJldF9jYXN0PGNvbnN0IEF0dHJpYnV0ZSo+KCZtX2F0dHJpYnV0ZUFy
cmF5KTsgfQorCiAgICAgZXhwbGljaXQgU2hhcmVhYmxlRWxlbWVudERhdGEoY29uc3QgVmVjdG9y
PEF0dHJpYnV0ZT4mKTsKICAgICBleHBsaWNpdCBTaGFyZWFibGVFbGVtZW50RGF0YShjb25zdCBV
bmlxdWVFbGVtZW50RGF0YSYpOwogICAgIH5TaGFyZWFibGVFbGVtZW50RGF0YSgpOwpAQCAtMTQ2
LDYgKzEzNywxMyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIFBhc3NSZWZQdHI8VW5pcXVlRWxlbWVu
dERhdGE+IGNyZWF0ZSgpOwogICAgIFBhc3NSZWZQdHI8U2hhcmVhYmxlRWxlbWVudERhdGE+IG1h
a2VTaGFyZWFibGVDb3B5KCkgY29uc3Q7CiAKKyAgICAvLyBUaGVzZSBmdW5jdGlvbnMgZG8gbm8g
ZXJyb3IvZHVwbGljYXRlIGNoZWNraW5nLgorICAgIHZvaWQgYWRkQXR0cmlidXRlKGNvbnN0IFF1
YWxpZmllZE5hbWUmLCBjb25zdCBBdG9taWNTdHJpbmcmKTsKKyAgICB2b2lkIHJlbW92ZUF0dHJp
YnV0ZShzaXplX3QgaW5kZXgpOworCisgICAgQXR0cmlidXRlKiBhdHRyaWJ1dGVJdGVtKHVuc2ln
bmVkIGluZGV4KTsKKyAgICBBdHRyaWJ1dGUqIGdldEF0dHJpYnV0ZUl0ZW0oY29uc3QgUXVhbGlm
aWVkTmFtZSYpOworCiAgICAgVW5pcXVlRWxlbWVudERhdGEoKTsKICAgICBleHBsaWNpdCBVbmlx
dWVFbGVtZW50RGF0YShjb25zdCBTaGFyZWFibGVFbGVtZW50RGF0YSYpOwogICAgIGV4cGxpY2l0
IFVuaXF1ZUVsZW1lbnREYXRhKGNvbnN0IFVuaXF1ZUVsZW1lbnREYXRhJik7CkBAIC05NjgsMjgg
Kzk2NiwxMSBAQCBpbmxpbmUgYm9vbCBpc1NoYWRvd0hvc3QoY29uc3QgTm9kZSogbm9kZSkKIHsK
ICAgICByZXR1cm4gbm9kZSAmJiBub2RlLT5pc0VsZW1lbnROb2RlKCkgJiYgdG9FbGVtZW50KG5v
ZGUpLT5zaGFkb3coKTsKIH0KLWlubGluZSBWZWN0b3I8QXR0cmlidXRlLCA0PiYgRWxlbWVudERh
dGE6Om11dGFibGVBdHRyaWJ1dGVWZWN0b3IoKQotewotICAgIEFTU0VSVChtX2lzVW5pcXVlKTsK
LSAgICByZXR1cm4gc3RhdGljX2Nhc3Q8VW5pcXVlRWxlbWVudERhdGEqPih0aGlzKS0+bV9hdHRy
aWJ1dGVWZWN0b3I7Ci19Ci0KLWlubGluZSBjb25zdCBWZWN0b3I8QXR0cmlidXRlLCA0PiYgRWxl
bWVudERhdGE6Om11dGFibGVBdHRyaWJ1dGVWZWN0b3IoKSBjb25zdAotewotICAgIEFTU0VSVCht
X2lzVW5pcXVlKTsKLSAgICByZXR1cm4gc3RhdGljX2Nhc3Q8Y29uc3QgVW5pcXVlRWxlbWVudERh
dGEqPih0aGlzKS0+bV9hdHRyaWJ1dGVWZWN0b3I7Ci19Ci0KLWlubGluZSBjb25zdCBBdHRyaWJ1
dGUqIEVsZW1lbnREYXRhOjppbW11dGFibGVBdHRyaWJ1dGVBcnJheSgpIGNvbnN0Ci17Ci0gICAg
QVNTRVJUKCFtX2lzVW5pcXVlKTsKLSAgICByZXR1cm4gcmVpbnRlcnByZXRfY2FzdDxjb25zdCBB
dHRyaWJ1dGUqPigmc3RhdGljX2Nhc3Q8Y29uc3QgU2hhcmVhYmxlRWxlbWVudERhdGEqPih0aGlz
KS0+bV9hdHRyaWJ1dGVBcnJheSk7Ci19CiAKIGlubGluZSBzaXplX3QgRWxlbWVudERhdGE6Omxl
bmd0aCgpIGNvbnN0CiB7CiAgICAgaWYgKGlzVW5pcXVlKCkpCi0gICAgICAgIHJldHVybiBtdXRh
YmxlQXR0cmlidXRlVmVjdG9yKCkuc2l6ZSgpOworICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8
Y29uc3QgVW5pcXVlRWxlbWVudERhdGEqPih0aGlzKS0+bV9hdHRyaWJ1dGVWZWN0b3Iuc2l6ZSgp
OwogICAgIHJldHVybiBtX2FycmF5U2l6ZTsKIH0KIApAQCAtMTAwMCwxNCArOTgxLDYgQEAgaW5s
aW5lIGNvbnN0IFN0eWxlUHJvcGVydHlTZXQqIEVsZW1lbnREYXRhOjpwcmVzZW50YXRpb25BdHRy
aWJ1dGVTdHlsZSgpIGNvbnN0CiAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGNvbnN0IFVuaXF1ZUVs
ZW1lbnREYXRhKj4odGhpcyktPm1fcHJlc2VudGF0aW9uQXR0cmlidXRlU3R5bGUuZ2V0KCk7CiB9
CiAKLWlubGluZSBBdHRyaWJ1dGUqIEVsZW1lbnREYXRhOjpnZXRBdHRyaWJ1dGVJdGVtKGNvbnN0
IEF0b21pY1N0cmluZyYgbmFtZSwgYm9vbCBzaG91bGRJZ25vcmVBdHRyaWJ1dGVDYXNlKQotewot
ICAgIHNpemVfdCBpbmRleCA9IGdldEF0dHJpYnV0ZUl0ZW1JbmRleChuYW1lLCBzaG91bGRJZ25v
cmVBdHRyaWJ1dGVDYXNlKTsKLSAgICBpZiAoaW5kZXggIT0gbm90Rm91bmQpCi0gICAgICAgIHJl
dHVybiBhdHRyaWJ1dGVJdGVtKGluZGV4KTsKLSAgICByZXR1cm4gMDsKLX0KLQogaW5saW5lIGNv
bnN0IEF0dHJpYnV0ZSogRWxlbWVudERhdGE6OmdldEF0dHJpYnV0ZUl0ZW0oY29uc3QgQXRvbWlj
U3RyaW5nJiBuYW1lLCBib29sIHNob3VsZElnbm9yZUF0dHJpYnV0ZUNhc2UpIGNvbnN0CiB7CiAg
ICAgc2l6ZV90IGluZGV4ID0gZ2V0QXR0cmlidXRlSXRlbUluZGV4KG5hbWUsIHNob3VsZElnbm9y
ZUF0dHJpYnV0ZUNhc2UpOwpAQCAtMTA1NiwyNyArMTAyOSwxMiBAQCBpbmxpbmUgY29uc3QgQXR0
cmlidXRlKiBFbGVtZW50RGF0YTo6Z2V0QXR0cmlidXRlSXRlbShjb25zdCBRdWFsaWZpZWROYW1l
JiBuYW1lKQogICAgIHJldHVybiAwOwogfQogCi1pbmxpbmUgQXR0cmlidXRlKiBFbGVtZW50RGF0
YTo6Z2V0QXR0cmlidXRlSXRlbShjb25zdCBRdWFsaWZpZWROYW1lJiBuYW1lKQotewotICAgIGZv
ciAodW5zaWduZWQgaSA9IDA7IGkgPCBsZW5ndGgoKTsgKytpKSB7Ci0gICAgICAgIGlmIChhdHRy
aWJ1dGVJdGVtKGkpLT5uYW1lKCkubWF0Y2hlcyhuYW1lKSkKLSAgICAgICAgICAgIHJldHVybiBh
dHRyaWJ1dGVJdGVtKGkpOwotICAgIH0KLSAgICByZXR1cm4gMDsKLX0KLQogaW5saW5lIGNvbnN0
IEF0dHJpYnV0ZSogRWxlbWVudERhdGE6OmF0dHJpYnV0ZUl0ZW0odW5zaWduZWQgaW5kZXgpIGNv
bnN0CiB7CiAgICAgQVNTRVJUX1dJVEhfU0VDVVJJVFlfSU1QTElDQVRJT04oaW5kZXggPCBsZW5n
dGgoKSk7CiAgICAgaWYgKG1faXNVbmlxdWUpCi0gICAgICAgIHJldHVybiAmbXV0YWJsZUF0dHJp
YnV0ZVZlY3RvcigpLmF0KGluZGV4KTsKLSAgICByZXR1cm4gJmltbXV0YWJsZUF0dHJpYnV0ZUFy
cmF5KClbaW5kZXhdOwotfQotCi1pbmxpbmUgQXR0cmlidXRlKiBFbGVtZW50RGF0YTo6YXR0cmli
dXRlSXRlbSh1bnNpZ25lZCBpbmRleCkKLXsKLSAgICBBU1NFUlRfV0lUSF9TRUNVUklUWV9JTVBM
SUNBVElPTihpbmRleCA8IGxlbmd0aCgpKTsKLSAgICByZXR1cm4gJm11dGFibGVBdHRyaWJ1dGVW
ZWN0b3IoKS5hdChpbmRleCk7CisgICAgICAgIHJldHVybiAmc3RhdGljX2Nhc3Q8Y29uc3QgVW5p
cXVlRWxlbWVudERhdGEqPih0aGlzKS0+bV9hdHRyaWJ1dGVWZWN0b3IuYXQoaW5kZXgpOworICAg
IHJldHVybiAmc3RhdGljX2Nhc3Q8Y29uc3QgU2hhcmVhYmxlRWxlbWVudERhdGEqPih0aGlzKS0+
aW1tdXRhYmxlQXR0cmlidXRlQXJyYXkoKVtpbmRleF07CiB9CiAKIH0gLy8gbmFtZXNwYWNlCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>