<?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>130943</bug_id>
          
          <creation_ts>2014-03-30 02:52:31 -0700</creation_ts>
          <short_desc>Make NodeList and HTMLCollection caching helpers use PassRef.</short_desc>
          <delta_ts>2014-03-30 03:49:00 -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>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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Andreas Kling">kling</reporter>
          <assigned_to name="Andreas Kling">kling</assigned_to>
          <cc>commit-queue</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>995657</commentid>
    <comment_count>0</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-03-30 02:52:31 -0700</bug_when>
    <thetext>Make NodeList and HTMLCollection caching helpers use PassRef.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>995658</commentid>
    <comment_count>1</comment_count>
      <attachid>228126</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-03-30 02:53:00 -0700</bug_when>
    <thetext>Created attachment 228126
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>995661</commentid>
    <comment_count>2</comment_count>
      <attachid>228126</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-03-30 03:48:58 -0700</bug_when>
    <thetext>Comment on attachment 228126
Patch

Clearing flags on attachment: 228126

Committed r166461: &lt;http://trac.webkit.org/changeset/166461&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>995662</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-03-30 03:49:00 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>228126</attachid>
            <date>2014-03-30 02:53:00 -0700</date>
            <delta_ts>2014-03-30 03:48:57 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-130943.diff</filename>
            <type>text/plain</type>
            <size>14757</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA5YWNlMWQ4Li4zOTgyZjBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzMg
QEAKKzIwMTQtMDMtMzAgIEFuZHJlYXMgS2xpbmcgIDxha2xpbmdAYXBwbGUuY29tPgorCisgICAg
ICAgIE1ha2UgTm9kZUxpc3QgYW5kIEhUTUxDb2xsZWN0aW9uIGNhY2hpbmcgaGVscGVycyB1c2Ug
UGFzc1JlZi4KKyAgICAgICAgPGh0dHBzOi8vd2Via2l0Lm9yZy9iLzEzMDk0Mz4KKworICAgICAg
ICBUd2VhayB0aGUgaGVscGVycyBpbiBOb2RlTGlzdHNOb2RlRGF0YSB0byByZXR1cm4gUGFzc1Jl
ZiBpbnN0ZWFkIG9mCisgICAgICAgIFBhc3NSZWZQdHIuIFRoaXMga25vY2tzIDIgYnJhbmNoZXMg
b2ZmIG9mIHNvbWUgcHJldHR5IGhvdCBjb2RlIG9uCisgICAgICAgIERyb21hZW8vZG9tLXF1ZXJ5
LgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZG9t
L0NoaWxkTm9kZUxpc3QuaDoKKyAgICAgICAgKiBkb20vQ2xhc3NOb2RlTGlzdC5oOgorICAgICAg
ICAqIGRvbS9OYW1lTm9kZUxpc3QuaDoKKyAgICAgICAgKiBkb20vTm9kZVJhcmVEYXRhLmg6Cisg
ICAgICAgIChXZWJDb3JlOjpOb2RlTGlzdHNOb2RlRGF0YTo6ZW5zdXJlQ2hpbGROb2RlTGlzdCk6
CisgICAgICAgIChXZWJDb3JlOjpOb2RlTGlzdHNOb2RlRGF0YTo6ZW5zdXJlRW1wdHlDaGlsZE5v
ZGVMaXN0KToKKyAgICAgICAgKFdlYkNvcmU6Ok5vZGVMaXN0c05vZGVEYXRhOjphZGRDYWNoZVdp
dGhBdG9taWNOYW1lKToKKyAgICAgICAgKFdlYkNvcmU6Ok5vZGVMaXN0c05vZGVEYXRhOjphZGRD
YWNoZVdpdGhOYW1lKToKKyAgICAgICAgKFdlYkNvcmU6Ok5vZGVMaXN0c05vZGVEYXRhOjphZGRD
YWNoZVdpdGhRdWFsaWZpZWROYW1lKToKKyAgICAgICAgKFdlYkNvcmU6Ok5vZGVMaXN0c05vZGVE
YXRhOjphZGRDYWNoZWRDb2xsZWN0aW9uKToKKyAgICAgICAgKiBkb20vVGFnTm9kZUxpc3QuaDoK
KyAgICAgICAgKiBodG1sL0hUTUxDb2xsZWN0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhU
TUxDb2xsZWN0aW9uOjpjcmVhdGUpOgorICAgICAgICAqIGh0bWwvSFRNTENvbGxlY3Rpb24uaDoK
KyAgICAgICAgKiBodG1sL0hUTUxGb3JtQ29udHJvbHNDb2xsZWN0aW9uLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkhUTUxGb3JtQ29udHJvbHNDb2xsZWN0aW9uOjpjcmVhdGUpOgorICAgICAgICAq
IGh0bWwvSFRNTEZvcm1Db250cm9sc0NvbGxlY3Rpb24uaDoKKyAgICAgICAgKiBodG1sL1JhZGlv
Tm9kZUxpc3QuaDoKKwogMjAxNC0wMy0yOSAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5j
b20+CiAKICAgICAgICAgTGl2ZU5vZGVMaXN0cyBzaG91bGQgdXNlIEVsZW1lbnREZXNjZW5kYW50
SXRlcmF0b3IKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9DaGlsZE5vZGVMaXN0Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9kb20vQ2hpbGROb2RlTGlzdC5oCmluZGV4IGQyOWVmM2QuLmIxOWZj
YTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9DaGlsZE5vZGVMaXN0LmgKKysrIGIv
U291cmNlL1dlYkNvcmUvZG9tL0NoaWxkTm9kZUxpc3QuaApAQCAtMzUsOSArMzUsOSBAQCBjbGFz
cyBDb250YWluZXJOb2RlOwogCiBjbGFzcyBFbXB0eU5vZGVMaXN0IGZpbmFsIDogcHVibGljIE5v
ZGVMaXN0IHsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxFbXB0eU5vZGVMaXN0PiBj
cmVhdGUoTm9kZSYgb3duZXIpCisgICAgc3RhdGljIFBhc3NSZWY8RW1wdHlOb2RlTGlzdD4gY3Jl
YXRlKE5vZGUmIG93bmVyKQogICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBFbXB0
eU5vZGVMaXN0KG93bmVyKSk7CisgICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEVtcHR5Tm9k
ZUxpc3Qob3duZXIpKTsKICAgICB9CiAgICAgdmlydHVhbCB+RW1wdHlOb2RlTGlzdCgpOwogCkBA
IC01OCw5ICs1OCw5IEBAIHByaXZhdGU6CiAKIGNsYXNzIENoaWxkTm9kZUxpc3QgZmluYWwgOiBw
dWJsaWMgTm9kZUxpc3QgewogcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPENoaWxkTm9k
ZUxpc3Q+IGNyZWF0ZShDb250YWluZXJOb2RlJiBwYXJlbnQpCisgICAgc3RhdGljIFBhc3NSZWY8
Q2hpbGROb2RlTGlzdD4gY3JlYXRlKENvbnRhaW5lck5vZGUmIHBhcmVudCkKICAgICB7Ci0gICAg
ICAgIHJldHVybiBhZG9wdFJlZihuZXcgQ2hpbGROb2RlTGlzdChwYXJlbnQpKTsKKyAgICAgICAg
cmV0dXJuIGFkb3B0UmVmKCpuZXcgQ2hpbGROb2RlTGlzdChwYXJlbnQpKTsKICAgICB9CiAKICAg
ICB2aXJ0dWFsIH5DaGlsZE5vZGVMaXN0KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9k
b20vQ2xhc3NOb2RlTGlzdC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0NsYXNzTm9kZUxpc3QuaApp
bmRleCA5OWYyY2RiLi45MDIyM2E0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vQ2xh
c3NOb2RlTGlzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9DbGFzc05vZGVMaXN0LmgKQEAg
LTM5LDkgKzM5LDkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBDbGFzc05vZGVMaXN0
IGZpbmFsIDogcHVibGljIENhY2hlZExpdmVOb2RlTGlzdDxDbGFzc05vZGVMaXN0PiB7CiBwdWJs
aWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8Q2xhc3NOb2RlTGlzdD4gY3JlYXRlKENvbnRhaW5l
ck5vZGUmIHJvb3ROb2RlLCBjb25zdCBTdHJpbmcmIGNsYXNzTmFtZXMpCisgICAgc3RhdGljIFBh
c3NSZWY8Q2xhc3NOb2RlTGlzdD4gY3JlYXRlKENvbnRhaW5lck5vZGUmIHJvb3ROb2RlLCBjb25z
dCBTdHJpbmcmIGNsYXNzTmFtZXMpCiAgICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3
IENsYXNzTm9kZUxpc3Qocm9vdE5vZGUsIGNsYXNzTmFtZXMpKTsKKyAgICAgICAgcmV0dXJuIGFk
b3B0UmVmKCpuZXcgQ2xhc3NOb2RlTGlzdChyb290Tm9kZSwgY2xhc3NOYW1lcykpOwogICAgIH0K
IAogICAgIHZpcnR1YWwgfkNsYXNzTm9kZUxpc3QoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2RvbS9OYW1lTm9kZUxpc3QuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9OYW1lTm9kZUxpc3Qu
aAppbmRleCBjNzg2NjA3Li42YjIxNWE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20v
TmFtZU5vZGVMaXN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL05hbWVOb2RlTGlzdC5oCkBA
IC0zMyw5ICszMyw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIC8vIE5vZGVMaXN0IHdoaWNoIGxp
c3RzIGFsbCBOb2RlcyBpbiBhIEVsZW1lbnQgd2l0aCBhIGdpdmVuICJuYW1lIiBhdHRyaWJ1dGUK
IGNsYXNzIE5hbWVOb2RlTGlzdCBmaW5hbCA6IHB1YmxpYyBDYWNoZWRMaXZlTm9kZUxpc3Q8TmFt
ZU5vZGVMaXN0PiB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8TmFtZU5vZGVMaXN0
PiBjcmVhdGUoQ29udGFpbmVyTm9kZSYgcm9vdE5vZGUsIGNvbnN0IEF0b21pY1N0cmluZyYgbmFt
ZSkKKyAgICBzdGF0aWMgUGFzc1JlZjxOYW1lTm9kZUxpc3Q+IGNyZWF0ZShDb250YWluZXJOb2Rl
JiByb290Tm9kZSwgY29uc3QgQXRvbWljU3RyaW5nJiBuYW1lKQogICAgIHsKLSAgICAgICAgcmV0
dXJuIGFkb3B0UmVmKG5ldyBOYW1lTm9kZUxpc3Qocm9vdE5vZGUsIG5hbWUpKTsKKyAgICAgICAg
cmV0dXJuIGFkb3B0UmVmKCpuZXcgTmFtZU5vZGVMaXN0KHJvb3ROb2RlLCBuYW1lKSk7CiAgICAg
fQogCiAgICAgdmlydHVhbCB+TmFtZU5vZGVMaXN0KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9kb20vTm9kZVJhcmVEYXRhLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZVJhcmVEYXRh
LmgKaW5kZXggMWFiZjk4ZS4uZTViNzA2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9t
L05vZGVSYXJlRGF0YS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlUmFyZURhdGEuaApA
QCAtNjYsMTQgKzY2LDE0IEBAIHB1YmxpYzoKICAgICAgICAgICAgIG1fY2hpbGROb2RlTGlzdC0+
aW52YWxpZGF0ZUNhY2hlKCk7CiAgICAgfQogCi0gICAgUGFzc1JlZlB0cjxDaGlsZE5vZGVMaXN0
PiBlbnN1cmVDaGlsZE5vZGVMaXN0KENvbnRhaW5lck5vZGUmIG5vZGUpCisgICAgUGFzc1JlZjxD
aGlsZE5vZGVMaXN0PiBlbnN1cmVDaGlsZE5vZGVMaXN0KENvbnRhaW5lck5vZGUmIG5vZGUpCiAg
ICAgewogICAgICAgICBBU1NFUlQoIW1fZW1wdHlDaGlsZE5vZGVMaXN0KTsKICAgICAgICAgaWYg
KG1fY2hpbGROb2RlTGlzdCkKLSAgICAgICAgICAgIHJldHVybiBtX2NoaWxkTm9kZUxpc3Q7Ci0g
ICAgICAgIFJlZlB0cjxDaGlsZE5vZGVMaXN0PiBsaXN0ID0gQ2hpbGROb2RlTGlzdDo6Y3JlYXRl
KG5vZGUpOwotICAgICAgICBtX2NoaWxkTm9kZUxpc3QgPSBsaXN0LmdldCgpOwotICAgICAgICBy
ZXR1cm4gbGlzdC5yZWxlYXNlKCk7CisgICAgICAgICAgICByZXR1cm4gKm1fY2hpbGROb2RlTGlz
dDsKKyAgICAgICAgYXV0byBsaXN0ID0gQ2hpbGROb2RlTGlzdDo6Y3JlYXRlKG5vZGUpOworICAg
ICAgICBtX2NoaWxkTm9kZUxpc3QgPSAmbGlzdC5nZXQoKTsKKyAgICAgICAgcmV0dXJuIGxpc3Q7
CiAgICAgfQogCiAgICAgdm9pZCByZW1vdmVDaGlsZE5vZGVMaXN0KENoaWxkTm9kZUxpc3QqIGxp
c3QpCkBAIC04NCwxNCArODQsMTQgQEAgcHVibGljOgogICAgICAgICBtX2NoaWxkTm9kZUxpc3Qg
PSBudWxscHRyOwogICAgIH0KIAotICAgIFBhc3NSZWZQdHI8RW1wdHlOb2RlTGlzdD4gZW5zdXJl
RW1wdHlDaGlsZE5vZGVMaXN0KE5vZGUmIG5vZGUpCisgICAgUGFzc1JlZjxFbXB0eU5vZGVMaXN0
PiBlbnN1cmVFbXB0eUNoaWxkTm9kZUxpc3QoTm9kZSYgbm9kZSkKICAgICB7CiAgICAgICAgIEFT
U0VSVCghbV9jaGlsZE5vZGVMaXN0KTsKICAgICAgICAgaWYgKG1fZW1wdHlDaGlsZE5vZGVMaXN0
KQotICAgICAgICAgICAgcmV0dXJuIG1fZW1wdHlDaGlsZE5vZGVMaXN0OwotICAgICAgICBSZWZQ
dHI8RW1wdHlOb2RlTGlzdD4gbGlzdCA9IEVtcHR5Tm9kZUxpc3Q6OmNyZWF0ZShub2RlKTsKLSAg
ICAgICAgbV9lbXB0eUNoaWxkTm9kZUxpc3QgPSBsaXN0LmdldCgpOwotICAgICAgICByZXR1cm4g
bGlzdC5yZWxlYXNlKCk7CisgICAgICAgICAgICByZXR1cm4gKm1fZW1wdHlDaGlsZE5vZGVMaXN0
OworICAgICAgICBhdXRvIGxpc3QgPSBFbXB0eU5vZGVMaXN0OjpjcmVhdGUobm9kZSk7CisgICAg
ICAgIG1fZW1wdHlDaGlsZE5vZGVMaXN0ID0gJmxpc3QuZ2V0KCk7CisgICAgICAgIHJldHVybiBs
aXN0OwogICAgIH0KIAogICAgIHZvaWQgcmVtb3ZlRW1wdHlDaGlsZE5vZGVMaXN0KEVtcHR5Tm9k
ZUxpc3QqIGxpc3QpCkBAIC0xMTgsNjMgKzExOCw2MyBAQCBwdWJsaWM6CiAgICAgdHlwZWRlZiBI
YXNoTWFwPFF1YWxpZmllZE5hbWUsIFRhZ05vZGVMaXN0Kj4gVGFnTm9kZUxpc3RDYWNoZU5TOwog
CiAgICAgdGVtcGxhdGU8dHlwZW5hbWUgVCwgdHlwZW5hbWUgQ29udGFpbmVyVHlwZT4KLSAgICBQ
YXNzUmVmUHRyPFQ+IGFkZENhY2hlV2l0aEF0b21pY05hbWUoQ29udGFpbmVyVHlwZSYgY29udGFp
bmVyLCBjb25zdCBBdG9taWNTdHJpbmcmIG5hbWUpCisgICAgUGFzc1JlZjxUPiBhZGRDYWNoZVdp
dGhBdG9taWNOYW1lKENvbnRhaW5lclR5cGUmIGNvbnRhaW5lciwgY29uc3QgQXRvbWljU3RyaW5n
JiBuYW1lKQogICAgIHsKICAgICAgICAgTm9kZUxpc3RBdG9taWNOYW1lQ2FjaGVNYXA6OkFkZFJl
c3VsdCByZXN1bHQgPSBtX2F0b21pY05hbWVDYWNoZXMuYWRkKG5hbWVkTm9kZUxpc3RLZXk8VD4o
bmFtZSksIG51bGxwdHIpOwogICAgICAgICBpZiAoIXJlc3VsdC5pc05ld0VudHJ5KQotICAgICAg
ICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PFQqPihyZXN1bHQuaXRlcmF0b3ItPnZhbHVlKTsKKyAg
ICAgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxUJj4oKnJlc3VsdC5pdGVyYXRvci0+dmFsdWUp
OwogCi0gICAgICAgIFJlZlB0cjxUPiBsaXN0ID0gVDo6Y3JlYXRlKGNvbnRhaW5lciwgbmFtZSk7
Ci0gICAgICAgIHJlc3VsdC5pdGVyYXRvci0+dmFsdWUgPSBsaXN0LmdldCgpOwotICAgICAgICBy
ZXR1cm4gbGlzdC5yZWxlYXNlKCk7CisgICAgICAgIGF1dG8gbGlzdCA9IFQ6OmNyZWF0ZShjb250
YWluZXIsIG5hbWUpOworICAgICAgICByZXN1bHQuaXRlcmF0b3ItPnZhbHVlID0gJmxpc3QuZ2V0
KCk7CisgICAgICAgIHJldHVybiBsaXN0OwogICAgIH0KIAogICAgIHRlbXBsYXRlPHR5cGVuYW1l
IFQ+Ci0gICAgUGFzc1JlZlB0cjxUPiBhZGRDYWNoZVdpdGhOYW1lKENvbnRhaW5lck5vZGUmIG5v
ZGUsIGNvbnN0IFN0cmluZyYgbmFtZSkKKyAgICBQYXNzUmVmPFQ+IGFkZENhY2hlV2l0aE5hbWUo
Q29udGFpbmVyTm9kZSYgbm9kZSwgY29uc3QgU3RyaW5nJiBuYW1lKQogICAgIHsKICAgICAgICAg
Tm9kZUxpc3ROYW1lQ2FjaGVNYXA6OkFkZFJlc3VsdCByZXN1bHQgPSBtX25hbWVDYWNoZXMuYWRk
KG5hbWVkTm9kZUxpc3RLZXk8VD4obmFtZSksIG51bGxwdHIpOwogICAgICAgICBpZiAoIXJlc3Vs
dC5pc05ld0VudHJ5KQotICAgICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PFQqPihyZXN1bHQu
aXRlcmF0b3ItPnZhbHVlKTsKKyAgICAgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxUJj4oKnJl
c3VsdC5pdGVyYXRvci0+dmFsdWUpOwogCi0gICAgICAgIFJlZlB0cjxUPiBsaXN0ID0gVDo6Y3Jl
YXRlKG5vZGUsIG5hbWUpOwotICAgICAgICByZXN1bHQuaXRlcmF0b3ItPnZhbHVlID0gbGlzdC5n
ZXQoKTsKLSAgICAgICAgcmV0dXJuIGxpc3QucmVsZWFzZSgpOworICAgICAgICBhdXRvIGxpc3Qg
PSBUOjpjcmVhdGUobm9kZSwgbmFtZSk7CisgICAgICAgIHJlc3VsdC5pdGVyYXRvci0+dmFsdWUg
PSAmbGlzdC5nZXQoKTsKKyAgICAgICAgcmV0dXJuIGxpc3Q7CiAgICAgfQogCi0gICAgUGFzc1Jl
ZlB0cjxUYWdOb2RlTGlzdD4gYWRkQ2FjaGVXaXRoUXVhbGlmaWVkTmFtZShDb250YWluZXJOb2Rl
JiBub2RlLCBjb25zdCBBdG9taWNTdHJpbmcmIG5hbWVzcGFjZVVSSSwgY29uc3QgQXRvbWljU3Ry
aW5nJiBsb2NhbE5hbWUpCisgICAgUGFzc1JlZjxUYWdOb2RlTGlzdD4gYWRkQ2FjaGVXaXRoUXVh
bGlmaWVkTmFtZShDb250YWluZXJOb2RlJiBub2RlLCBjb25zdCBBdG9taWNTdHJpbmcmIG5hbWVz
cGFjZVVSSSwgY29uc3QgQXRvbWljU3RyaW5nJiBsb2NhbE5hbWUpCiAgICAgewogICAgICAgICBR
dWFsaWZpZWROYW1lIG5hbWUobnVsbEF0b20sIGxvY2FsTmFtZSwgbmFtZXNwYWNlVVJJKTsKICAg
ICAgICAgVGFnTm9kZUxpc3RDYWNoZU5TOjpBZGRSZXN1bHQgcmVzdWx0ID0gbV90YWdOb2RlTGlz
dENhY2hlTlMuYWRkKG5hbWUsIG51bGxwdHIpOwogICAgICAgICBpZiAoIXJlc3VsdC5pc05ld0Vu
dHJ5KQotICAgICAgICAgICAgcmV0dXJuIHJlc3VsdC5pdGVyYXRvci0+dmFsdWU7CisgICAgICAg
ICAgICByZXR1cm4gKnJlc3VsdC5pdGVyYXRvci0+dmFsdWU7CiAKLSAgICAgICAgUmVmUHRyPFRh
Z05vZGVMaXN0PiBsaXN0ID0gVGFnTm9kZUxpc3Q6OmNyZWF0ZShub2RlLCBuYW1lc3BhY2VVUkks
IGxvY2FsTmFtZSk7Ci0gICAgICAgIHJlc3VsdC5pdGVyYXRvci0+dmFsdWUgPSBsaXN0LmdldCgp
OwotICAgICAgICByZXR1cm4gbGlzdC5yZWxlYXNlKCk7CisgICAgICAgIGF1dG8gbGlzdCA9IFRh
Z05vZGVMaXN0OjpjcmVhdGUobm9kZSwgbmFtZXNwYWNlVVJJLCBsb2NhbE5hbWUpOworICAgICAg
ICByZXN1bHQuaXRlcmF0b3ItPnZhbHVlID0gJmxpc3QuZ2V0KCk7CisgICAgICAgIHJldHVybiBs
aXN0OwogICAgIH0KIAogICAgIHRlbXBsYXRlPHR5cGVuYW1lIFQsIHR5cGVuYW1lIENvbnRhaW5l
clR5cGU+Ci0gICAgUGFzc1JlZlB0cjxUPiBhZGRDYWNoZWRDb2xsZWN0aW9uKENvbnRhaW5lclR5
cGUmIGNvbnRhaW5lciwgQ29sbGVjdGlvblR5cGUgY29sbGVjdGlvblR5cGUsIGNvbnN0IEF0b21p
Y1N0cmluZyYgbmFtZSkKKyAgICBQYXNzUmVmPFQ+IGFkZENhY2hlZENvbGxlY3Rpb24oQ29udGFp
bmVyVHlwZSYgY29udGFpbmVyLCBDb2xsZWN0aW9uVHlwZSBjb2xsZWN0aW9uVHlwZSwgY29uc3Qg
QXRvbWljU3RyaW5nJiBuYW1lKQogICAgIHsKICAgICAgICAgQ29sbGVjdGlvbkNhY2hlTWFwOjpB
ZGRSZXN1bHQgcmVzdWx0ID0gbV9jYWNoZWRDb2xsZWN0aW9ucy5hZGQobmFtZWRDb2xsZWN0aW9u
S2V5KGNvbGxlY3Rpb25UeXBlLCBuYW1lKSwgbnVsbHB0cik7CiAgICAgICAgIGlmICghcmVzdWx0
LmlzTmV3RW50cnkpCi0gICAgICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8VCo+KHJlc3VsdC5p
dGVyYXRvci0+dmFsdWUpOworICAgICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PFQmPigqcmVz
dWx0Lml0ZXJhdG9yLT52YWx1ZSk7CiAKLSAgICAgICAgUmVmUHRyPFQ+IGxpc3QgPSBUOjpjcmVh
dGUoY29udGFpbmVyLCBjb2xsZWN0aW9uVHlwZSwgbmFtZSk7Ci0gICAgICAgIHJlc3VsdC5pdGVy
YXRvci0+dmFsdWUgPSBsaXN0LmdldCgpOwotICAgICAgICByZXR1cm4gbGlzdC5yZWxlYXNlKCk7
CisgICAgICAgIGF1dG8gbGlzdCA9IFQ6OmNyZWF0ZShjb250YWluZXIsIGNvbGxlY3Rpb25UeXBl
LCBuYW1lKTsKKyAgICAgICAgcmVzdWx0Lml0ZXJhdG9yLT52YWx1ZSA9ICZsaXN0LmdldCgpOwor
ICAgICAgICByZXR1cm4gbGlzdDsKICAgICB9CiAKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBULCB0
eXBlbmFtZSBDb250YWluZXJUeXBlPgotICAgIFBhc3NSZWZQdHI8VD4gYWRkQ2FjaGVkQ29sbGVj
dGlvbihDb250YWluZXJUeXBlJiBjb250YWluZXIsIENvbGxlY3Rpb25UeXBlIGNvbGxlY3Rpb25U
eXBlKQorICAgIFBhc3NSZWY8VD4gYWRkQ2FjaGVkQ29sbGVjdGlvbihDb250YWluZXJUeXBlJiBj
b250YWluZXIsIENvbGxlY3Rpb25UeXBlIGNvbGxlY3Rpb25UeXBlKQogICAgIHsKICAgICAgICAg
Q29sbGVjdGlvbkNhY2hlTWFwOjpBZGRSZXN1bHQgcmVzdWx0ID0gbV9jYWNoZWRDb2xsZWN0aW9u
cy5hZGQobmFtZWRDb2xsZWN0aW9uS2V5KGNvbGxlY3Rpb25UeXBlLCBzdGFyQXRvbSksIG51bGxw
dHIpOwogICAgICAgICBpZiAoIXJlc3VsdC5pc05ld0VudHJ5KQotICAgICAgICAgICAgcmV0dXJu
IHN0YXRpY19jYXN0PFQqPihyZXN1bHQuaXRlcmF0b3ItPnZhbHVlKTsKKyAgICAgICAgICAgIHJl
dHVybiBzdGF0aWNfY2FzdDxUJj4oKnJlc3VsdC5pdGVyYXRvci0+dmFsdWUpOwogCi0gICAgICAg
IFJlZlB0cjxUPiBsaXN0ID0gVDo6Y3JlYXRlKGNvbnRhaW5lciwgY29sbGVjdGlvblR5cGUpOwot
ICAgICAgICByZXN1bHQuaXRlcmF0b3ItPnZhbHVlID0gbGlzdC5nZXQoKTsKLSAgICAgICAgcmV0
dXJuIGxpc3QucmVsZWFzZSgpOworICAgICAgICBhdXRvIGxpc3QgPSBUOjpjcmVhdGUoY29udGFp
bmVyLCBjb2xsZWN0aW9uVHlwZSk7CisgICAgICAgIHJlc3VsdC5pdGVyYXRvci0+dmFsdWUgPSAm
bGlzdC5nZXQoKTsKKyAgICAgICAgcmV0dXJuIGxpc3Q7CiAgICAgfQogCiAgICAgdGVtcGxhdGU8
dHlwZW5hbWUgVD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9UYWdOb2RlTGlzdC5o
IGIvU291cmNlL1dlYkNvcmUvZG9tL1RhZ05vZGVMaXN0LmgKaW5kZXggMzZmNzk3ZC4uYjU4Zjdi
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1RhZ05vZGVMaXN0LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvZG9tL1RhZ05vZGVMaXN0LmgKQEAgLTMzLDE1ICszMywxNSBAQCBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAvLyBOb2RlTGlzdCB0aGF0IGxpbWl0cyB0byBhIHBhcnRpY3VsYXIgdGFn
LgogY2xhc3MgVGFnTm9kZUxpc3QgZmluYWwgOiBwdWJsaWMgQ2FjaGVkTGl2ZU5vZGVMaXN0PFRh
Z05vZGVMaXN0PiB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8VGFnTm9kZUxpc3Q+
IGNyZWF0ZShDb250YWluZXJOb2RlJiByb290Tm9kZSwgY29uc3QgQXRvbWljU3RyaW5nJiBuYW1l
c3BhY2VVUkksIGNvbnN0IEF0b21pY1N0cmluZyYgbG9jYWxOYW1lKQorICAgIHN0YXRpYyBQYXNz
UmVmPFRhZ05vZGVMaXN0PiBjcmVhdGUoQ29udGFpbmVyTm9kZSYgcm9vdE5vZGUsIGNvbnN0IEF0
b21pY1N0cmluZyYgbmFtZXNwYWNlVVJJLCBjb25zdCBBdG9taWNTdHJpbmcmIGxvY2FsTmFtZSkK
ICAgICB7CiAgICAgICAgIEFTU0VSVChuYW1lc3BhY2VVUkkgIT0gc3RhckF0b20pOwotICAgICAg
ICByZXR1cm4gYWRvcHRSZWYobmV3IFRhZ05vZGVMaXN0KHJvb3ROb2RlLCBuYW1lc3BhY2VVUkks
IGxvY2FsTmFtZSkpOworICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBUYWdOb2RlTGlzdChy
b290Tm9kZSwgbmFtZXNwYWNlVVJJLCBsb2NhbE5hbWUpKTsKICAgICB9CiAKLSAgICBzdGF0aWMg
UGFzc1JlZlB0cjxUYWdOb2RlTGlzdD4gY3JlYXRlKENvbnRhaW5lck5vZGUmIHJvb3ROb2RlLCBj
b25zdCBBdG9taWNTdHJpbmcmIGxvY2FsTmFtZSkKKyAgICBzdGF0aWMgUGFzc1JlZjxUYWdOb2Rl
TGlzdD4gY3JlYXRlKENvbnRhaW5lck5vZGUmIHJvb3ROb2RlLCBjb25zdCBBdG9taWNTdHJpbmcm
IGxvY2FsTmFtZSkKICAgICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgVGFnTm9kZUxp
c3Qocm9vdE5vZGUsIHN0YXJBdG9tLCBsb2NhbE5hbWUpKTsKKyAgICAgICAgcmV0dXJuIGFkb3B0
UmVmKCpuZXcgVGFnTm9kZUxpc3Qocm9vdE5vZGUsIHN0YXJBdG9tLCBsb2NhbE5hbWUpKTsKICAg
ICB9CiAKICAgICB2aXJ0dWFsIH5UYWdOb2RlTGlzdCgpOwpAQCAtNjcsOSArNjcsOSBAQCBpbmxp
bmUgYm9vbCBUYWdOb2RlTGlzdDo6bm9kZU1hdGNoZXMoRWxlbWVudCogZWxlbWVudCkgY29uc3QK
IAogY2xhc3MgSFRNTFRhZ05vZGVMaXN0IGZpbmFsIDogcHVibGljIENhY2hlZExpdmVOb2RlTGlz
dDxIVE1MVGFnTm9kZUxpc3Q+IHsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxIVE1M
VGFnTm9kZUxpc3Q+IGNyZWF0ZShDb250YWluZXJOb2RlJiByb290Tm9kZSwgY29uc3QgQXRvbWlj
U3RyaW5nJiBsb2NhbE5hbWUpCisgICAgc3RhdGljIFBhc3NSZWY8SFRNTFRhZ05vZGVMaXN0PiBj
cmVhdGUoQ29udGFpbmVyTm9kZSYgcm9vdE5vZGUsIGNvbnN0IEF0b21pY1N0cmluZyYgbG9jYWxO
YW1lKQogICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBIVE1MVGFnTm9kZUxpc3Qo
cm9vdE5vZGUsIGxvY2FsTmFtZSkpOworICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBIVE1M
VGFnTm9kZUxpc3Qocm9vdE5vZGUsIGxvY2FsTmFtZSkpOwogICAgIH0KIAogICAgIHZpcnR1YWwg
fkhUTUxUYWdOb2RlTGlzdCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
Q29sbGVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxDb2xsZWN0aW9uLmNwcApp
bmRleCA2ZjA3NDE5Li5iOTAxODIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxDb2xsZWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxDb2xsZWN0aW9u
LmNwcApAQCAtMTQ1LDkgKzE0NSw5IEBAIEhUTUxDb2xsZWN0aW9uOjpIVE1MQ29sbGVjdGlvbihD
b250YWluZXJOb2RlJiBvd25lck5vZGUsIENvbGxlY3Rpb25UeXBlIHR5cGUsIEVsCiAgICAgQVNT
RVJUKG1fY29sbGVjdGlvblR5cGUgPT0gc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHR5cGUpKTsKIH0K
IAotUGFzc1JlZlB0cjxIVE1MQ29sbGVjdGlvbj4gSFRNTENvbGxlY3Rpb246OmNyZWF0ZShDb250
YWluZXJOb2RlJiBiYXNlLCBDb2xsZWN0aW9uVHlwZSB0eXBlKQorUGFzc1JlZjxIVE1MQ29sbGVj
dGlvbj4gSFRNTENvbGxlY3Rpb246OmNyZWF0ZShDb250YWluZXJOb2RlJiBiYXNlLCBDb2xsZWN0
aW9uVHlwZSB0eXBlKQogewotICAgIHJldHVybiBhZG9wdFJlZihuZXcgSFRNTENvbGxlY3Rpb24o
YmFzZSwgdHlwZSkpOworICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEhUTUxDb2xsZWN0aW9uKGJh
c2UsIHR5cGUpKTsKIH0KIAogSFRNTENvbGxlY3Rpb246On5IVE1MQ29sbGVjdGlvbigpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxDb2xsZWN0aW9uLmggYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxDb2xsZWN0aW9uLmgKaW5kZXggYTJkOWU2YS4uOWJmMDI1YiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MQ29sbGVjdGlvbi5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTENvbGxlY3Rpb24uaApAQCAtODYsNyArODYsNyBAQCBwcml2YXRlOgog
CiBjbGFzcyBIVE1MQ29sbGVjdGlvbiA6IHB1YmxpYyBTY3JpcHRXcmFwcGFibGUsIHB1YmxpYyBS
ZWZDb3VudGVkPEhUTUxDb2xsZWN0aW9uPiB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQ
dHI8SFRNTENvbGxlY3Rpb24+IGNyZWF0ZShDb250YWluZXJOb2RlJiBiYXNlLCBDb2xsZWN0aW9u
VHlwZSk7CisgICAgc3RhdGljIFBhc3NSZWY8SFRNTENvbGxlY3Rpb24+IGNyZWF0ZShDb250YWlu
ZXJOb2RlJiBiYXNlLCBDb2xsZWN0aW9uVHlwZSk7CiAgICAgdmlydHVhbCB+SFRNTENvbGxlY3Rp
b24oKTsKIAogICAgIC8vIERPTSBBUEkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTEZvcm1Db250cm9sc0NvbGxlY3Rpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
Rm9ybUNvbnRyb2xzQ29sbGVjdGlvbi5jcHAKaW5kZXggNjdjMmZlNC4uYzU2ZTNhYSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xzQ29sbGVjdGlvbi5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xzQ29sbGVjdGlvbi5jcHAK
QEAgLTQzLDkgKzQzLDkgQEAgSFRNTEZvcm1Db250cm9sc0NvbGxlY3Rpb246OkhUTUxGb3JtQ29u
dHJvbHNDb2xsZWN0aW9uKENvbnRhaW5lck5vZGUmIG93bmVyTm9kZSkKICAgICBBU1NFUlQoaXNI
VE1MRm9ybUVsZW1lbnQob3duZXJOb2RlKSB8fCBpc0hUTUxGaWVsZFNldEVsZW1lbnQob3duZXJO
b2RlKSk7CiB9CiAKLVBhc3NSZWZQdHI8SFRNTEZvcm1Db250cm9sc0NvbGxlY3Rpb24+IEhUTUxG
b3JtQ29udHJvbHNDb2xsZWN0aW9uOjpjcmVhdGUoQ29udGFpbmVyTm9kZSYgb3duZXJOb2RlLCBD
b2xsZWN0aW9uVHlwZSkKK1Bhc3NSZWY8SFRNTEZvcm1Db250cm9sc0NvbGxlY3Rpb24+IEhUTUxG
b3JtQ29udHJvbHNDb2xsZWN0aW9uOjpjcmVhdGUoQ29udGFpbmVyTm9kZSYgb3duZXJOb2RlLCBD
b2xsZWN0aW9uVHlwZSkKIHsKLSAgICByZXR1cm4gYWRvcHRSZWYobmV3IEhUTUxGb3JtQ29udHJv
bHNDb2xsZWN0aW9uKG93bmVyTm9kZSkpOworICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEhUTUxG
b3JtQ29udHJvbHNDb2xsZWN0aW9uKG93bmVyTm9kZSkpOwogfQogCiBIVE1MRm9ybUNvbnRyb2xz
Q29sbGVjdGlvbjo6fkhUTUxGb3JtQ29udHJvbHNDb2xsZWN0aW9uKCkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sc0NvbGxlY3Rpb24uaCBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sc0NvbGxlY3Rpb24uaAppbmRleCBlMTEzZTMwLi4z
MGE3MzFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29udHJvbHND
b2xsZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xzQ29s
bGVjdGlvbi5oCkBAIC0zNyw3ICszNyw3IEBAIGNsYXNzIFF1YWxpZmllZE5hbWU7CiAKIGNsYXNz
IEhUTUxGb3JtQ29udHJvbHNDb2xsZWN0aW9uIDogcHVibGljIEhUTUxDb2xsZWN0aW9uIHsKIHB1
YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxIVE1MRm9ybUNvbnRyb2xzQ29sbGVjdGlvbj4g
Y3JlYXRlKENvbnRhaW5lck5vZGUmLCBDb2xsZWN0aW9uVHlwZSk7CisgICAgc3RhdGljIFBhc3NS
ZWY8SFRNTEZvcm1Db250cm9sc0NvbGxlY3Rpb24+IGNyZWF0ZShDb250YWluZXJOb2RlJiwgQ29s
bGVjdGlvblR5cGUpOwogCiAgICAgdmlydHVhbCB+SFRNTEZvcm1Db250cm9sc0NvbGxlY3Rpb24o
KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9SYWRpb05vZGVMaXN0LmggYi9T
b3VyY2UvV2ViQ29yZS9odG1sL1JhZGlvTm9kZUxpc3QuaAppbmRleCBmODExZDhmLi4yMjc5NjBk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL1JhZGlvTm9kZUxpc3QuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL1JhZGlvTm9kZUxpc3QuaApAQCAtMzUsOSArMzUsOSBAQCBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIFJhZGlvTm9kZUxpc3QgZmluYWwgOiBwdWJsaWMgQ2Fj
aGVkTGl2ZU5vZGVMaXN0PFJhZGlvTm9kZUxpc3Q+IHsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUGFz
c1JlZlB0cjxSYWRpb05vZGVMaXN0PiBjcmVhdGUoQ29udGFpbmVyTm9kZSYgcm9vdE5vZGUsIGNv
bnN0IEF0b21pY1N0cmluZyYgbmFtZSkKKyAgICBzdGF0aWMgUGFzc1JlZjxSYWRpb05vZGVMaXN0
PiBjcmVhdGUoQ29udGFpbmVyTm9kZSYgcm9vdE5vZGUsIGNvbnN0IEF0b21pY1N0cmluZyYgbmFt
ZSkKICAgICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgUmFkaW9Ob2RlTGlzdChyb290
Tm9kZSwgbmFtZSkpOworICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBSYWRpb05vZGVMaXN0
KHJvb3ROb2RlLCBuYW1lKSk7CiAgICAgfQogCiAgICAgflJhZGlvTm9kZUxpc3QoKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>