<?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>139949</bug_id>
          
          <creation_ts>2014-12-25 21:10:54 -0800</creation_ts>
          <short_desc>Purge PassRefPtr from Element and ElementRareData.</short_desc>
          <delta_ts>2014-12-26 15:00:16 -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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Andreas Kling">kling</reporter>
          <assigned_to name="Andreas Kling">kling</assigned_to>
          <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>kangil.han</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1057886</commentid>
    <comment_count>0</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-12-25 21:10:54 -0800</bug_when>
    <thetext>Let&apos;s use Ref/RefPtr instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1057887</commentid>
    <comment_count>1</comment_count>
      <attachid>243754</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-12-25 21:25:33 -0800</bug_when>
    <thetext>Created attachment 243754
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1057890</commentid>
    <comment_count>2</comment_count>
      <attachid>243755</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-12-25 22:38:51 -0800</bug_when>
    <thetext>Created attachment 243755
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1057931</commentid>
    <comment_count>3</comment_count>
      <attachid>243755</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-12-26 15:00:12 -0800</bug_when>
    <thetext>Comment on attachment 243755
Patch

Clearing flags on attachment: 243755

Committed r177751: &lt;http://trac.webkit.org/changeset/177751&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1057932</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-12-26 15:00:16 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>243754</attachid>
            <date>2014-12-25 21:25:33 -0800</date>
            <delta_ts>2014-12-25 22:38:51 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-139949.diff</filename>
            <type>text/plain</type>
            <size>9255</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBiMjcyN2I5Li41N2NjMDYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMjkg
QEAKIDIwMTQtMTItMjUgIEFuZHJlYXMgS2xpbmcgIDxha2xpbmdAYXBwbGUuY29tPgogCisgICAg
ICAgIFB1cmdlIFBhc3NSZWZQdHIgZnJvbSBFbGVtZW50IGFuZCBFbGVtZW50UmFyZURhdGEuCisg
ICAgICAgIDxodHRwczovL3dlYmtpdC5vcmcvYi8xMzk5NDk+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTWFrZSBmdW5jdGlvbnMgdGhhdCB1c2VkIHRv
IHRha2UgUGFzc1JlZlB0ciBub3cgdGFrZSBSZWYmJiBvciBSZWZQdHImJgorICAgICAgICBpbnN0
ZWFkIGRlcGVuZGluZyBvbiBwb3NzaWJsZSBudWxsaXR5IG9mIGluY29taW5nIHZhbHVlcy4KKwor
ICAgICAgICAqIGRvbS9FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6OmFk
ZFNoYWRvd1Jvb3QpOgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudDo6c2V0QmVmb3JlUHNldWRv
RWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpFbGVtZW50OjpzZXRBZnRlclBzZXVkb0VsZW1l
bnQpOgorICAgICAgICAqIGRvbS9FbGVtZW50Lmg6CisgICAgICAgICogZG9tL0VsZW1lbnRSYXJl
RGF0YS5oOgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudFJhcmVEYXRhOjpzZXRTaGFkb3dSb290
KToKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnRSYXJlRGF0YTo6c2V0QmVmb3JlUHNldWRvRWxl
bWVudCk6CisgICAgICAgIChXZWJDb3JlOjpFbGVtZW50UmFyZURhdGE6OnNldEFmdGVyUHNldWRv
RWxlbWVudCk6CisgICAgICAgICogZG9tL1NoYWRvd1Jvb3QuaDoKKyAgICAgICAgKiBzdHlsZS9T
dHlsZVJlc29sdmVUcmVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpzZXRCZWZvcmVP
ckFmdGVyUHNldWRvRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6YXR0YWNoQmVm
b3JlT3JBZnRlclBzZXVkb0VsZW1lbnRJZk5lZWRlZCk6CisKKzIwMTQtMTItMjUgIEFuZHJlYXMg
S2xpbmcgIDxha2xpbmdAYXBwbGUuY29tPgorCiAgICAgICAgIERPTSBleGNlcHRpb24gY3JlYXRv
ciBmdW5jdGlvbnMgc2hvdWxkIHJldHVybiBSZWYuCiAgICAgICAgIDxodHRwczovL3dlYmtpdC5v
cmcvYi8xMzk5NDc+CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcAppbmRleCBmOGUwZGJkLi41MWU3ZTI5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwCkBAIC0xNDU3LDI0ICsxNDU3LDI0IEBAIHZvaWQgRWxl
bWVudDo6cmVzZXROZWVkc05vZGVSZW5kZXJpbmdUcmF2ZXJzYWxTbG93UGF0aCgpCiAgICAgc2V0
TmVlZHNOb2RlUmVuZGVyaW5nVHJhdmVyc2FsU2xvd1BhdGgoc2hvdWxkVXNlTm9kZVJlbmRlcmlu
Z1RyYXZlcnNhbFNsb3dQYXRoKCp0aGlzKSk7CiB9CiAKLXZvaWQgRWxlbWVudDo6YWRkU2hhZG93
Um9vdChQYXNzUmVmUHRyPFNoYWRvd1Jvb3Q+IG5ld1NoYWRvd1Jvb3QpCit2b2lkIEVsZW1lbnQ6
OmFkZFNoYWRvd1Jvb3QoUmVmPFNoYWRvd1Jvb3Q+JiYgbmV3U2hhZG93Um9vdCkKIHsKICAgICBB
U1NFUlQoIXNoYWRvd1Jvb3QoKSk7CiAKLSAgICBTaGFkb3dSb290KiBzaGFkb3dSb290ID0gbmV3
U2hhZG93Um9vdC5nZXQoKTsKLSAgICBlbnN1cmVFbGVtZW50UmFyZURhdGEoKS5zZXRTaGFkb3dS
b290KG5ld1NoYWRvd1Jvb3QpOworICAgIFNoYWRvd1Jvb3QmIHNoYWRvd1Jvb3QgPSBuZXdTaGFk
b3dSb290LmdldCgpOworICAgIGVuc3VyZUVsZW1lbnRSYXJlRGF0YSgpLnNldFNoYWRvd1Jvb3Qo
V1RGOjptb3ZlKG5ld1NoYWRvd1Jvb3QpKTsKIAotICAgIHNoYWRvd1Jvb3QtPnNldEhvc3RFbGVt
ZW50KHRoaXMpOwotICAgIHNoYWRvd1Jvb3QtPnNldFBhcmVudFRyZWVTY29wZSgmdHJlZVNjb3Bl
KCkpOwotICAgIHNoYWRvd1Jvb3QtPmRpc3RyaWJ1dG9yKCkuZGlkU2hhZG93Qm91bmRhcnlDaGFu
Z2UodGhpcyk7CisgICAgc2hhZG93Um9vdC5zZXRIb3N0RWxlbWVudCh0aGlzKTsKKyAgICBzaGFk
b3dSb290LnNldFBhcmVudFRyZWVTY29wZSgmdHJlZVNjb3BlKCkpOworICAgIHNoYWRvd1Jvb3Qu
ZGlzdHJpYnV0b3IoKS5kaWRTaGFkb3dCb3VuZGFyeUNoYW5nZSh0aGlzKTsKIAotICAgIENoaWxk
Tm9kZUluc2VydGlvbk5vdGlmaWVyKCp0aGlzKS5ub3RpZnkoKnNoYWRvd1Jvb3QpOworICAgIENo
aWxkTm9kZUluc2VydGlvbk5vdGlmaWVyKCp0aGlzKS5ub3RpZnkoc2hhZG93Um9vdCk7CiAKICAg
ICByZXNldE5lZWRzTm9kZVJlbmRlcmluZ1RyYXZlcnNhbFNsb3dQYXRoKCk7CiAKICAgICBzZXRO
ZWVkc1N0eWxlUmVjYWxjKFJlY29uc3RydWN0UmVuZGVyVHJlZSk7CiAKLSAgICBJbnNwZWN0b3JJ
bnN0cnVtZW50YXRpb246OmRpZFB1c2hTaGFkb3dSb290KHRoaXMsIHNoYWRvd1Jvb3QpOworICAg
IEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUHVzaFNoYWRvd1Jvb3QodGhpcywgJnNoYWRv
d1Jvb3QpOwogfQogCiB2b2lkIEVsZW1lbnQ6OnJlbW92ZVNoYWRvd1Jvb3QoKQpAQCAtMjMyOSwx
NCArMjMyOSwxNCBAQCBQc2V1ZG9FbGVtZW50KiBFbGVtZW50OjphZnRlclBzZXVkb0VsZW1lbnQo
KSBjb25zdAogICAgIHJldHVybiBoYXNSYXJlRGF0YSgpID8gZWxlbWVudFJhcmVEYXRhKCktPmFm
dGVyUHNldWRvRWxlbWVudCgpIDogMDsKIH0KIAotdm9pZCBFbGVtZW50OjpzZXRCZWZvcmVQc2V1
ZG9FbGVtZW50KFBhc3NSZWZQdHI8UHNldWRvRWxlbWVudD4gZWxlbWVudCkKK3ZvaWQgRWxlbWVu
dDo6c2V0QmVmb3JlUHNldWRvRWxlbWVudChSZWY8UHNldWRvRWxlbWVudD4mJiBlbGVtZW50KQog
ewotICAgIGVuc3VyZUVsZW1lbnRSYXJlRGF0YSgpLnNldEJlZm9yZVBzZXVkb0VsZW1lbnQoZWxl
bWVudCk7CisgICAgZW5zdXJlRWxlbWVudFJhcmVEYXRhKCkuc2V0QmVmb3JlUHNldWRvRWxlbWVu
dChXVEY6Om1vdmUoZWxlbWVudCkpOwogfQogCi12b2lkIEVsZW1lbnQ6OnNldEFmdGVyUHNldWRv
RWxlbWVudChQYXNzUmVmUHRyPFBzZXVkb0VsZW1lbnQ+IGVsZW1lbnQpCit2b2lkIEVsZW1lbnQ6
OnNldEFmdGVyUHNldWRvRWxlbWVudChSZWY8UHNldWRvRWxlbWVudD4mJiBlbGVtZW50KQogewot
ICAgIGVuc3VyZUVsZW1lbnRSYXJlRGF0YSgpLnNldEFmdGVyUHNldWRvRWxlbWVudChlbGVtZW50
KTsKKyAgICBlbnN1cmVFbGVtZW50UmFyZURhdGEoKS5zZXRBZnRlclBzZXVkb0VsZW1lbnQoV1RG
Ojptb3ZlKGVsZW1lbnQpKTsKIH0KIAogc3RhdGljIHZvaWQgZGlzY29ubmVjdFBzZXVkb0VsZW1l
bnQoUHNldWRvRWxlbWVudCogcHNldWRvRWxlbWVudCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2RvbS9FbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCmluZGV4IDY2
OGEwNTEuLjFmZGQ2ODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgK
KysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaApAQCAtNTQ2LDggKzU0Niw4IEBAIHB1
YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgZGlkRGV0YWNoUmVuZGVyZXJzKCk7CiAgICAgdmlydHVh
bCBSZWZQdHI8UmVuZGVyU3R5bGU+IGN1c3RvbVN0eWxlRm9yUmVuZGVyZXIoUmVuZGVyU3R5bGUm
IHBhcmVudFN0eWxlKTsKIAotICAgIHZvaWQgc2V0QmVmb3JlUHNldWRvRWxlbWVudChQYXNzUmVm
UHRyPFBzZXVkb0VsZW1lbnQ+KTsKLSAgICB2b2lkIHNldEFmdGVyUHNldWRvRWxlbWVudChQYXNz
UmVmUHRyPFBzZXVkb0VsZW1lbnQ+KTsKKyAgICB2b2lkIHNldEJlZm9yZVBzZXVkb0VsZW1lbnQo
UmVmPFBzZXVkb0VsZW1lbnQ+JiYpOworICAgIHZvaWQgc2V0QWZ0ZXJQc2V1ZG9FbGVtZW50KFJl
ZjxQc2V1ZG9FbGVtZW50PiYmKTsKICAgICB2b2lkIGNsZWFyQmVmb3JlUHNldWRvRWxlbWVudCgp
OwogICAgIHZvaWQgY2xlYXJBZnRlclBzZXVkb0VsZW1lbnQoKTsKICAgICB2b2lkIHJlc2V0Q29t
cHV0ZWRTdHlsZSgpOwpAQCAtNjM1LDcgKzYzNSw3IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCBS
ZWZQdHI8Tm9kZT4gY2xvbmVOb2RlSW50ZXJuYWwoRG9jdW1lbnQmLCBDbG9uaW5nT3BlcmF0aW9u
KSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIFJlZlB0cjxFbGVtZW50PiBjbG9uZUVsZW1lbnRXaXRo
b3V0QXR0cmlidXRlc0FuZENoaWxkcmVuKERvY3VtZW50Jik7CiAKLSAgICB2b2lkIGFkZFNoYWRv
d1Jvb3QoUGFzc1JlZlB0cjxTaGFkb3dSb290Pik7CisgICAgdm9pZCBhZGRTaGFkb3dSb290KFJl
ZjxTaGFkb3dSb290PiYmKTsKICAgICB2b2lkIHJlbW92ZVNoYWRvd1Jvb3QoKTsKIAogICAgIGJv
b2wgcmFyZURhdGFTdHlsZUFmZmVjdGVkQnlFbXB0eSgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnRSYXJlRGF0YS5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0Vs
ZW1lbnRSYXJlRGF0YS5oCmluZGV4IGY3N2QxZDAuLjYwNjFlOTUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2RvbS9FbGVtZW50UmFyZURhdGEuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20v
RWxlbWVudFJhcmVEYXRhLmgKQEAgLTMwLDcgKzMwLDYgQEAKICNpbmNsdWRlICJSZW5kZXJFbGVt
ZW50LmgiCiAjaW5jbHVkZSAiU2hhZG93Um9vdC5oIgogI2luY2x1ZGUgIlN0eWxlSW5oZXJpdGVk
RGF0YS5oIgotI2luY2x1ZGUgPHd0Zi9Pd25QdHIuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewog
CkBAIC0zOSw4ICszOCw4IEBAIHB1YmxpYzoKICAgICBFbGVtZW50UmFyZURhdGEoRWxlbWVudCYs
IFJlbmRlckVsZW1lbnQqKTsKICAgICB+RWxlbWVudFJhcmVEYXRhKCk7CiAKLSAgICB2b2lkIHNl
dEJlZm9yZVBzZXVkb0VsZW1lbnQoUGFzc1JlZlB0cjxQc2V1ZG9FbGVtZW50Pik7Ci0gICAgdm9p
ZCBzZXRBZnRlclBzZXVkb0VsZW1lbnQoUGFzc1JlZlB0cjxQc2V1ZG9FbGVtZW50Pik7CisgICAg
dm9pZCBzZXRCZWZvcmVQc2V1ZG9FbGVtZW50KFJlZlB0cjxQc2V1ZG9FbGVtZW50PiYmKTsKKyAg
ICB2b2lkIHNldEFmdGVyUHNldWRvRWxlbWVudChSZWZQdHI8UHNldWRvRWxlbWVudD4mJik7CiAK
ICAgICBQc2V1ZG9FbGVtZW50KiBiZWZvcmVQc2V1ZG9FbGVtZW50KCkgY29uc3QgeyByZXR1cm4g
bV9iZWZvcmVQc2V1ZG9FbGVtZW50LmdldCgpOyB9CiAgICAgUHNldWRvRWxlbWVudCogYWZ0ZXJQ
c2V1ZG9FbGVtZW50KCkgY29uc3QgeyByZXR1cm4gbV9hZnRlclBzZXVkb0VsZW1lbnQuZ2V0KCk7
IH0KQEAgLTg1LDcgKzg0LDcgQEAgcHVibGljOgogCiAgICAgdm9pZCBjbGVhclNoYWRvd1Jvb3Qo
KSB7IG1fc2hhZG93Um9vdCA9IG51bGxwdHI7IH0KICAgICBTaGFkb3dSb290KiBzaGFkb3dSb290
KCkgY29uc3QgeyByZXR1cm4gbV9zaGFkb3dSb290LmdldCgpOyB9Ci0gICAgdm9pZCBzZXRTaGFk
b3dSb290KFBhc3NSZWZQdHI8U2hhZG93Um9vdD4gc2hhZG93Um9vdCkgeyBtX3NoYWRvd1Jvb3Qg
PSBzaGFkb3dSb290OyB9CisgICAgdm9pZCBzZXRTaGFkb3dSb290KFJlZlB0cjxTaGFkb3dSb290
PiYmIHNoYWRvd1Jvb3QpIHsgbV9zaGFkb3dSb290ID0gV1RGOjptb3ZlKHNoYWRvd1Jvb3QpOyB9
CiAKICAgICBOYW1lZE5vZGVNYXAqIGF0dHJpYnV0ZU1hcCgpIGNvbnN0IHsgcmV0dXJuIG1fYXR0
cmlidXRlTWFwLmdldCgpOyB9CiAgICAgdm9pZCBzZXRBdHRyaWJ1dGVNYXAoc3RkOjp1bmlxdWVf
cHRyPE5hbWVkTm9kZU1hcD4gYXR0cmlidXRlTWFwKSB7IG1fYXR0cmlidXRlTWFwID0gV1RGOjpt
b3ZlKGF0dHJpYnV0ZU1hcCk7IH0KQEAgLTE4OSwxNiArMTg4LDE2IEBAIGlubGluZSBFbGVtZW50
UmFyZURhdGE6On5FbGVtZW50UmFyZURhdGEoKQogICAgIEFTU0VSVCghbV9hZnRlclBzZXVkb0Vs
ZW1lbnQpOwogfQogCi1pbmxpbmUgdm9pZCBFbGVtZW50UmFyZURhdGE6OnNldEJlZm9yZVBzZXVk
b0VsZW1lbnQoUGFzc1JlZlB0cjxQc2V1ZG9FbGVtZW50PiBwc2V1ZG9FbGVtZW50KQoraW5saW5l
IHZvaWQgRWxlbWVudFJhcmVEYXRhOjpzZXRCZWZvcmVQc2V1ZG9FbGVtZW50KFJlZlB0cjxQc2V1
ZG9FbGVtZW50PiYmIHBzZXVkb0VsZW1lbnQpCiB7CiAgICAgQVNTRVJUKCFtX2JlZm9yZVBzZXVk
b0VsZW1lbnQgfHwgIXBzZXVkb0VsZW1lbnQpOwotICAgIG1fYmVmb3JlUHNldWRvRWxlbWVudCA9
IHBzZXVkb0VsZW1lbnQ7CisgICAgbV9iZWZvcmVQc2V1ZG9FbGVtZW50ID0gV1RGOjptb3ZlKHBz
ZXVkb0VsZW1lbnQpOwogfQogCi1pbmxpbmUgdm9pZCBFbGVtZW50UmFyZURhdGE6OnNldEFmdGVy
UHNldWRvRWxlbWVudChQYXNzUmVmUHRyPFBzZXVkb0VsZW1lbnQ+IHBzZXVkb0VsZW1lbnQpCitp
bmxpbmUgdm9pZCBFbGVtZW50UmFyZURhdGE6OnNldEFmdGVyUHNldWRvRWxlbWVudChSZWZQdHI8
UHNldWRvRWxlbWVudD4mJiBwc2V1ZG9FbGVtZW50KQogewogICAgIEFTU0VSVCghbV9hZnRlclBz
ZXVkb0VsZW1lbnQgfHwgIXBzZXVkb0VsZW1lbnQpOwotICAgIG1fYWZ0ZXJQc2V1ZG9FbGVtZW50
ID0gcHNldWRvRWxlbWVudDsKKyAgICBtX2FmdGVyUHNldWRvRWxlbWVudCA9IFdURjo6bW92ZShw
c2V1ZG9FbGVtZW50KTsKIH0KIAogaW5saW5lIHZvaWQgRWxlbWVudFJhcmVEYXRhOjpyZXNldENv
bXB1dGVkU3R5bGUoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1NoYWRvd1Jvb3Qu
aCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TaGFkb3dSb290LmgKaW5kZXggZTFmODhhNi4uY2QxMGYx
YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1NoYWRvd1Jvb3QuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vU2hhZG93Um9vdC5oCkBAIC00Myw5ICs0Myw5IEBAIHB1YmxpYzoKICAg
ICAgICAgVXNlckFnZW50U2hhZG93Um9vdCA9IDAsCiAgICAgfTsKIAotICAgIHN0YXRpYyBQYXNz
UmVmUHRyPFNoYWRvd1Jvb3Q+IGNyZWF0ZShEb2N1bWVudCYgZG9jdW1lbnQsIFNoYWRvd1Jvb3RU
eXBlIHR5cGUpCisgICAgc3RhdGljIFJlZjxTaGFkb3dSb290PiBjcmVhdGUoRG9jdW1lbnQmIGRv
Y3VtZW50LCBTaGFkb3dSb290VHlwZSB0eXBlKQogICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0
UmVmKG5ldyBTaGFkb3dSb290KGRvY3VtZW50LCB0eXBlKSk7CisgICAgICAgIHJldHVybiBhZG9w
dFJlZigqbmV3IFNoYWRvd1Jvb3QoZG9jdW1lbnQsIHR5cGUpKTsKICAgICB9CiAKICAgICB2aXJ0
dWFsIH5TaGFkb3dSb290KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHls
ZVJlc29sdmVUcmVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlUmVzb2x2ZVRyZWUu
Y3BwCmluZGV4IGI4OGQ3ZjMuLmIzNTZiMzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0
eWxlL1N0eWxlUmVzb2x2ZVRyZWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxl
UmVzb2x2ZVRyZWUuY3BwCkBAIC01MzIsMTQgKzUzMiwxNCBAQCBzdGF0aWMgUHNldWRvRWxlbWVu
dCogYmVmb3JlT3JBZnRlclBzZXVkb0VsZW1lbnQoRWxlbWVudCYgY3VycmVudCwgUHNldWRvSWQg
cHNldQogICAgIHJldHVybiBjdXJyZW50LmFmdGVyUHNldWRvRWxlbWVudCgpOwogfQogCi1zdGF0
aWMgdm9pZCBzZXRCZWZvcmVPckFmdGVyUHNldWRvRWxlbWVudChFbGVtZW50JiBjdXJyZW50LCBQ
YXNzUmVmUHRyPFBzZXVkb0VsZW1lbnQ+IHBzZXVkb0VsZW1lbnQsIFBzZXVkb0lkIHBzZXVkb0lk
KQorc3RhdGljIHZvaWQgc2V0QmVmb3JlT3JBZnRlclBzZXVkb0VsZW1lbnQoRWxlbWVudCYgY3Vy
cmVudCwgUmVmPFBzZXVkb0VsZW1lbnQ+JiYgcHNldWRvRWxlbWVudCwgUHNldWRvSWQgcHNldWRv
SWQpCiB7CiAgICAgQVNTRVJUKHBzZXVkb0lkID09IEJFRk9SRSB8fCBwc2V1ZG9JZCA9PSBBRlRF
Uik7CiAgICAgaWYgKHBzZXVkb0lkID09IEJFRk9SRSkgewotICAgICAgICBjdXJyZW50LnNldEJl
Zm9yZVBzZXVkb0VsZW1lbnQocHNldWRvRWxlbWVudCk7CisgICAgICAgIGN1cnJlbnQuc2V0QmVm
b3JlUHNldWRvRWxlbWVudChXVEY6Om1vdmUocHNldWRvRWxlbWVudCkpOwogICAgICAgICByZXR1
cm47CiAgICAgfQotICAgIGN1cnJlbnQuc2V0QWZ0ZXJQc2V1ZG9FbGVtZW50KHBzZXVkb0VsZW1l
bnQpOworICAgIGN1cnJlbnQuc2V0QWZ0ZXJQc2V1ZG9FbGVtZW50KFdURjo6bW92ZShwc2V1ZG9F
bGVtZW50KSk7CiB9CiAKIHN0YXRpYyB2b2lkIGNsZWFyQmVmb3JlT3JBZnRlclBzZXVkb0VsZW1l
bnQoRWxlbWVudCYgY3VycmVudCwgUHNldWRvSWQgcHNldWRvSWQpCkBAIC01OTIsOSArNTkyLDkg
QEAgc3RhdGljIHZvaWQgYXR0YWNoQmVmb3JlT3JBZnRlclBzZXVkb0VsZW1lbnRJZk5lZWRlZChF
bGVtZW50JiBjdXJyZW50LCBQc2V1ZG9JZAogewogICAgIGlmICghbmVlZHNQc2V1ZG9FbGVtZW50
KGN1cnJlbnQsIHBzZXVkb0lkKSkKICAgICAgICAgcmV0dXJuOwotICAgIFJlZlB0cjxQc2V1ZG9F
bGVtZW50PiBwc2V1ZG9FbGVtZW50ID0gUHNldWRvRWxlbWVudDo6Y3JlYXRlKGN1cnJlbnQsIHBz
ZXVkb0lkKTsKLSAgICBzZXRCZWZvcmVPckFmdGVyUHNldWRvRWxlbWVudChjdXJyZW50LCBwc2V1
ZG9FbGVtZW50LCBwc2V1ZG9JZCk7Ci0gICAgYXR0YWNoUmVuZGVyVHJlZSgqcHNldWRvRWxlbWVu
dCwgKmN1cnJlbnQucmVuZGVyU3R5bGUoKSwgcmVuZGVyVHJlZVBvc2l0aW9uLCBudWxscHRyKTsK
KyAgICBSZWY8UHNldWRvRWxlbWVudD4gcHNldWRvRWxlbWVudCA9IFBzZXVkb0VsZW1lbnQ6OmNy
ZWF0ZShjdXJyZW50LCBwc2V1ZG9JZCk7CisgICAgc2V0QmVmb3JlT3JBZnRlclBzZXVkb0VsZW1l
bnQoY3VycmVudCwgcHNldWRvRWxlbWVudC5jb3B5UmVmKCksIHBzZXVkb0lkKTsKKyAgICBhdHRh
Y2hSZW5kZXJUcmVlKHBzZXVkb0VsZW1lbnQuZ2V0KCksICpjdXJyZW50LnJlbmRlclN0eWxlKCks
IHJlbmRlclRyZWVQb3NpdGlvbiwgbnVsbHB0cik7CiB9CiAKIHN0YXRpYyB2b2lkIGF0dGFjaFJl
bmRlclRyZWUoRWxlbWVudCYgY3VycmVudCwgUmVuZGVyU3R5bGUmIGluaGVyaXRlZFN0eWxlLCBS
ZW5kZXJUcmVlUG9zaXRpb24mIHJlbmRlclRyZWVQb3NpdGlvbiwgUGFzc1JlZlB0cjxSZW5kZXJT
dHlsZT4gcmVzb2x2ZWRTdHlsZSkK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>243755</attachid>
            <date>2014-12-25 22:38:51 -0800</date>
            <delta_ts>2014-12-26 15:00:12 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-139949.diff</filename>
            <type>text/plain</type>
            <size>9901</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBiMjcyN2I5Li43YmIwNzRlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDMw
IEBACiAyMDE0LTEyLTI1ICBBbmRyZWFzIEtsaW5nICA8YWtsaW5nQGFwcGxlLmNvbT4KIAorICAg
ICAgICBQdXJnZSBQYXNzUmVmUHRyIGZyb20gRWxlbWVudCBhbmQgRWxlbWVudFJhcmVEYXRhLgor
ICAgICAgICA8aHR0cHM6Ly93ZWJraXQub3JnL2IvMTM5OTQ5PgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE1ha2UgZnVuY3Rpb25zIHRoYXQgdXNlZCB0
byB0YWtlIFBhc3NSZWZQdHIgbm93IHRha2UgUmVmJiYgb3IgUmVmUHRyJiYKKyAgICAgICAgaW5z
dGVhZCBkZXBlbmRpbmcgb24gcG9zc2libGUgbnVsbGl0eSBvZiBpbmNvbWluZyB2YWx1ZXMuCisK
KyAgICAgICAgKiBkb20vRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFbGVtZW50Ojph
ZGRTaGFkb3dSb290KToKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6OnNldEJlZm9yZVBzZXVk
b0VsZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudDo6c2V0QWZ0ZXJQc2V1ZG9FbGVt
ZW50KToKKyAgICAgICAgKiBkb20vRWxlbWVudC5oOgorICAgICAgICAqIGRvbS9FbGVtZW50UmFy
ZURhdGEuaDoKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnRSYXJlRGF0YTo6c2V0U2hhZG93Um9v
dCk6CisgICAgICAgIChXZWJDb3JlOjpFbGVtZW50UmFyZURhdGE6OnNldEJlZm9yZVBzZXVkb0Vs
ZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudFJhcmVEYXRhOjpzZXRBZnRlclBzZXVk
b0VsZW1lbnQpOgorICAgICAgICAqIGRvbS9Qc2V1ZG9FbGVtZW50Lmg6CisgICAgICAgICogZG9t
L1NoYWRvd1Jvb3QuaDoKKyAgICAgICAgKiBzdHlsZS9TdHlsZVJlc29sdmVUcmVlLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlN0eWxlOjpzZXRCZWZvcmVPckFmdGVyUHNldWRvRWxlbWVudCk6Cisg
ICAgICAgIChXZWJDb3JlOjpTdHlsZTo6YXR0YWNoQmVmb3JlT3JBZnRlclBzZXVkb0VsZW1lbnRJ
Zk5lZWRlZCk6CisKKzIwMTQtMTItMjUgIEFuZHJlYXMgS2xpbmcgIDxha2xpbmdAYXBwbGUuY29t
PgorCiAgICAgICAgIERPTSBleGNlcHRpb24gY3JlYXRvciBmdW5jdGlvbnMgc2hvdWxkIHJldHVy
biBSZWYuCiAgICAgICAgIDxodHRwczovL3dlYmtpdC5vcmcvYi8xMzk5NDc+CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9F
bGVtZW50LmNwcAppbmRleCBmOGUwZGJkLi41MWU3ZTI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9kb20vRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3Bw
CkBAIC0xNDU3LDI0ICsxNDU3LDI0IEBAIHZvaWQgRWxlbWVudDo6cmVzZXROZWVkc05vZGVSZW5k
ZXJpbmdUcmF2ZXJzYWxTbG93UGF0aCgpCiAgICAgc2V0TmVlZHNOb2RlUmVuZGVyaW5nVHJhdmVy
c2FsU2xvd1BhdGgoc2hvdWxkVXNlTm9kZVJlbmRlcmluZ1RyYXZlcnNhbFNsb3dQYXRoKCp0aGlz
KSk7CiB9CiAKLXZvaWQgRWxlbWVudDo6YWRkU2hhZG93Um9vdChQYXNzUmVmUHRyPFNoYWRvd1Jv
b3Q+IG5ld1NoYWRvd1Jvb3QpCit2b2lkIEVsZW1lbnQ6OmFkZFNoYWRvd1Jvb3QoUmVmPFNoYWRv
d1Jvb3Q+JiYgbmV3U2hhZG93Um9vdCkKIHsKICAgICBBU1NFUlQoIXNoYWRvd1Jvb3QoKSk7CiAK
LSAgICBTaGFkb3dSb290KiBzaGFkb3dSb290ID0gbmV3U2hhZG93Um9vdC5nZXQoKTsKLSAgICBl
bnN1cmVFbGVtZW50UmFyZURhdGEoKS5zZXRTaGFkb3dSb290KG5ld1NoYWRvd1Jvb3QpOworICAg
IFNoYWRvd1Jvb3QmIHNoYWRvd1Jvb3QgPSBuZXdTaGFkb3dSb290LmdldCgpOworICAgIGVuc3Vy
ZUVsZW1lbnRSYXJlRGF0YSgpLnNldFNoYWRvd1Jvb3QoV1RGOjptb3ZlKG5ld1NoYWRvd1Jvb3Qp
KTsKIAotICAgIHNoYWRvd1Jvb3QtPnNldEhvc3RFbGVtZW50KHRoaXMpOwotICAgIHNoYWRvd1Jv
b3QtPnNldFBhcmVudFRyZWVTY29wZSgmdHJlZVNjb3BlKCkpOwotICAgIHNoYWRvd1Jvb3QtPmRp
c3RyaWJ1dG9yKCkuZGlkU2hhZG93Qm91bmRhcnlDaGFuZ2UodGhpcyk7CisgICAgc2hhZG93Um9v
dC5zZXRIb3N0RWxlbWVudCh0aGlzKTsKKyAgICBzaGFkb3dSb290LnNldFBhcmVudFRyZWVTY29w
ZSgmdHJlZVNjb3BlKCkpOworICAgIHNoYWRvd1Jvb3QuZGlzdHJpYnV0b3IoKS5kaWRTaGFkb3dC
b3VuZGFyeUNoYW5nZSh0aGlzKTsKIAotICAgIENoaWxkTm9kZUluc2VydGlvbk5vdGlmaWVyKCp0
aGlzKS5ub3RpZnkoKnNoYWRvd1Jvb3QpOworICAgIENoaWxkTm9kZUluc2VydGlvbk5vdGlmaWVy
KCp0aGlzKS5ub3RpZnkoc2hhZG93Um9vdCk7CiAKICAgICByZXNldE5lZWRzTm9kZVJlbmRlcmlu
Z1RyYXZlcnNhbFNsb3dQYXRoKCk7CiAKICAgICBzZXROZWVkc1N0eWxlUmVjYWxjKFJlY29uc3Ry
dWN0UmVuZGVyVHJlZSk7CiAKLSAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFB1c2hT
aGFkb3dSb290KHRoaXMsIHNoYWRvd1Jvb3QpOworICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlv
bjo6ZGlkUHVzaFNoYWRvd1Jvb3QodGhpcywgJnNoYWRvd1Jvb3QpOwogfQogCiB2b2lkIEVsZW1l
bnQ6OnJlbW92ZVNoYWRvd1Jvb3QoKQpAQCAtMjMyOSwxNCArMjMyOSwxNCBAQCBQc2V1ZG9FbGVt
ZW50KiBFbGVtZW50OjphZnRlclBzZXVkb0VsZW1lbnQoKSBjb25zdAogICAgIHJldHVybiBoYXNS
YXJlRGF0YSgpID8gZWxlbWVudFJhcmVEYXRhKCktPmFmdGVyUHNldWRvRWxlbWVudCgpIDogMDsK
IH0KIAotdm9pZCBFbGVtZW50OjpzZXRCZWZvcmVQc2V1ZG9FbGVtZW50KFBhc3NSZWZQdHI8UHNl
dWRvRWxlbWVudD4gZWxlbWVudCkKK3ZvaWQgRWxlbWVudDo6c2V0QmVmb3JlUHNldWRvRWxlbWVu
dChSZWY8UHNldWRvRWxlbWVudD4mJiBlbGVtZW50KQogewotICAgIGVuc3VyZUVsZW1lbnRSYXJl
RGF0YSgpLnNldEJlZm9yZVBzZXVkb0VsZW1lbnQoZWxlbWVudCk7CisgICAgZW5zdXJlRWxlbWVu
dFJhcmVEYXRhKCkuc2V0QmVmb3JlUHNldWRvRWxlbWVudChXVEY6Om1vdmUoZWxlbWVudCkpOwog
fQogCi12b2lkIEVsZW1lbnQ6OnNldEFmdGVyUHNldWRvRWxlbWVudChQYXNzUmVmUHRyPFBzZXVk
b0VsZW1lbnQ+IGVsZW1lbnQpCit2b2lkIEVsZW1lbnQ6OnNldEFmdGVyUHNldWRvRWxlbWVudChS
ZWY8UHNldWRvRWxlbWVudD4mJiBlbGVtZW50KQogewotICAgIGVuc3VyZUVsZW1lbnRSYXJlRGF0
YSgpLnNldEFmdGVyUHNldWRvRWxlbWVudChlbGVtZW50KTsKKyAgICBlbnN1cmVFbGVtZW50UmFy
ZURhdGEoKS5zZXRBZnRlclBzZXVkb0VsZW1lbnQoV1RGOjptb3ZlKGVsZW1lbnQpKTsKIH0KIAog
c3RhdGljIHZvaWQgZGlzY29ubmVjdFBzZXVkb0VsZW1lbnQoUHNldWRvRWxlbWVudCogcHNldWRv
RWxlbWVudCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmggYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCmluZGV4IDY2OGEwNTEuLjFmZGQ2ODIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9t
L0VsZW1lbnQuaApAQCAtNTQ2LDggKzU0Niw4IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQg
ZGlkRGV0YWNoUmVuZGVyZXJzKCk7CiAgICAgdmlydHVhbCBSZWZQdHI8UmVuZGVyU3R5bGU+IGN1
c3RvbVN0eWxlRm9yUmVuZGVyZXIoUmVuZGVyU3R5bGUmIHBhcmVudFN0eWxlKTsKIAotICAgIHZv
aWQgc2V0QmVmb3JlUHNldWRvRWxlbWVudChQYXNzUmVmUHRyPFBzZXVkb0VsZW1lbnQ+KTsKLSAg
ICB2b2lkIHNldEFmdGVyUHNldWRvRWxlbWVudChQYXNzUmVmUHRyPFBzZXVkb0VsZW1lbnQ+KTsK
KyAgICB2b2lkIHNldEJlZm9yZVBzZXVkb0VsZW1lbnQoUmVmPFBzZXVkb0VsZW1lbnQ+JiYpOwor
ICAgIHZvaWQgc2V0QWZ0ZXJQc2V1ZG9FbGVtZW50KFJlZjxQc2V1ZG9FbGVtZW50PiYmKTsKICAg
ICB2b2lkIGNsZWFyQmVmb3JlUHNldWRvRWxlbWVudCgpOwogICAgIHZvaWQgY2xlYXJBZnRlclBz
ZXVkb0VsZW1lbnQoKTsKICAgICB2b2lkIHJlc2V0Q29tcHV0ZWRTdHlsZSgpOwpAQCAtNjM1LDcg
KzYzNSw3IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCBSZWZQdHI8Tm9kZT4gY2xvbmVOb2RlSW50
ZXJuYWwoRG9jdW1lbnQmLCBDbG9uaW5nT3BlcmF0aW9uKSBvdmVycmlkZTsKICAgICB2aXJ0dWFs
IFJlZlB0cjxFbGVtZW50PiBjbG9uZUVsZW1lbnRXaXRob3V0QXR0cmlidXRlc0FuZENoaWxkcmVu
KERvY3VtZW50Jik7CiAKLSAgICB2b2lkIGFkZFNoYWRvd1Jvb3QoUGFzc1JlZlB0cjxTaGFkb3dS
b290Pik7CisgICAgdm9pZCBhZGRTaGFkb3dSb290KFJlZjxTaGFkb3dSb290PiYmKTsKICAgICB2
b2lkIHJlbW92ZVNoYWRvd1Jvb3QoKTsKIAogICAgIGJvb2wgcmFyZURhdGFTdHlsZUFmZmVjdGVk
QnlFbXB0eSgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnRS
YXJlRGF0YS5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnRSYXJlRGF0YS5oCmluZGV4IGY3
N2QxZDAuLjYwNjFlOTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50UmFy
ZURhdGEuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudFJhcmVEYXRhLmgKQEAgLTMw
LDcgKzMwLDYgQEAKICNpbmNsdWRlICJSZW5kZXJFbGVtZW50LmgiCiAjaW5jbHVkZSAiU2hhZG93
Um9vdC5oIgogI2luY2x1ZGUgIlN0eWxlSW5oZXJpdGVkRGF0YS5oIgotI2luY2x1ZGUgPHd0Zi9P
d25QdHIuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC0zOSw4ICszOCw4IEBAIHB1Ymxp
YzoKICAgICBFbGVtZW50UmFyZURhdGEoRWxlbWVudCYsIFJlbmRlckVsZW1lbnQqKTsKICAgICB+
RWxlbWVudFJhcmVEYXRhKCk7CiAKLSAgICB2b2lkIHNldEJlZm9yZVBzZXVkb0VsZW1lbnQoUGFz
c1JlZlB0cjxQc2V1ZG9FbGVtZW50Pik7Ci0gICAgdm9pZCBzZXRBZnRlclBzZXVkb0VsZW1lbnQo
UGFzc1JlZlB0cjxQc2V1ZG9FbGVtZW50Pik7CisgICAgdm9pZCBzZXRCZWZvcmVQc2V1ZG9FbGVt
ZW50KFJlZlB0cjxQc2V1ZG9FbGVtZW50PiYmKTsKKyAgICB2b2lkIHNldEFmdGVyUHNldWRvRWxl
bWVudChSZWZQdHI8UHNldWRvRWxlbWVudD4mJik7CiAKICAgICBQc2V1ZG9FbGVtZW50KiBiZWZv
cmVQc2V1ZG9FbGVtZW50KCkgY29uc3QgeyByZXR1cm4gbV9iZWZvcmVQc2V1ZG9FbGVtZW50Lmdl
dCgpOyB9CiAgICAgUHNldWRvRWxlbWVudCogYWZ0ZXJQc2V1ZG9FbGVtZW50KCkgY29uc3QgeyBy
ZXR1cm4gbV9hZnRlclBzZXVkb0VsZW1lbnQuZ2V0KCk7IH0KQEAgLTg1LDcgKzg0LDcgQEAgcHVi
bGljOgogCiAgICAgdm9pZCBjbGVhclNoYWRvd1Jvb3QoKSB7IG1fc2hhZG93Um9vdCA9IG51bGxw
dHI7IH0KICAgICBTaGFkb3dSb290KiBzaGFkb3dSb290KCkgY29uc3QgeyByZXR1cm4gbV9zaGFk
b3dSb290LmdldCgpOyB9Ci0gICAgdm9pZCBzZXRTaGFkb3dSb290KFBhc3NSZWZQdHI8U2hhZG93
Um9vdD4gc2hhZG93Um9vdCkgeyBtX3NoYWRvd1Jvb3QgPSBzaGFkb3dSb290OyB9CisgICAgdm9p
ZCBzZXRTaGFkb3dSb290KFJlZlB0cjxTaGFkb3dSb290PiYmIHNoYWRvd1Jvb3QpIHsgbV9zaGFk
b3dSb290ID0gV1RGOjptb3ZlKHNoYWRvd1Jvb3QpOyB9CiAKICAgICBOYW1lZE5vZGVNYXAqIGF0
dHJpYnV0ZU1hcCgpIGNvbnN0IHsgcmV0dXJuIG1fYXR0cmlidXRlTWFwLmdldCgpOyB9CiAgICAg
dm9pZCBzZXRBdHRyaWJ1dGVNYXAoc3RkOjp1bmlxdWVfcHRyPE5hbWVkTm9kZU1hcD4gYXR0cmli
dXRlTWFwKSB7IG1fYXR0cmlidXRlTWFwID0gV1RGOjptb3ZlKGF0dHJpYnV0ZU1hcCk7IH0KQEAg
LTE4OSwxNiArMTg4LDE2IEBAIGlubGluZSBFbGVtZW50UmFyZURhdGE6On5FbGVtZW50UmFyZURh
dGEoKQogICAgIEFTU0VSVCghbV9hZnRlclBzZXVkb0VsZW1lbnQpOwogfQogCi1pbmxpbmUgdm9p
ZCBFbGVtZW50UmFyZURhdGE6OnNldEJlZm9yZVBzZXVkb0VsZW1lbnQoUGFzc1JlZlB0cjxQc2V1
ZG9FbGVtZW50PiBwc2V1ZG9FbGVtZW50KQoraW5saW5lIHZvaWQgRWxlbWVudFJhcmVEYXRhOjpz
ZXRCZWZvcmVQc2V1ZG9FbGVtZW50KFJlZlB0cjxQc2V1ZG9FbGVtZW50PiYmIHBzZXVkb0VsZW1l
bnQpCiB7CiAgICAgQVNTRVJUKCFtX2JlZm9yZVBzZXVkb0VsZW1lbnQgfHwgIXBzZXVkb0VsZW1l
bnQpOwotICAgIG1fYmVmb3JlUHNldWRvRWxlbWVudCA9IHBzZXVkb0VsZW1lbnQ7CisgICAgbV9i
ZWZvcmVQc2V1ZG9FbGVtZW50ID0gV1RGOjptb3ZlKHBzZXVkb0VsZW1lbnQpOwogfQogCi1pbmxp
bmUgdm9pZCBFbGVtZW50UmFyZURhdGE6OnNldEFmdGVyUHNldWRvRWxlbWVudChQYXNzUmVmUHRy
PFBzZXVkb0VsZW1lbnQ+IHBzZXVkb0VsZW1lbnQpCitpbmxpbmUgdm9pZCBFbGVtZW50UmFyZURh
dGE6OnNldEFmdGVyUHNldWRvRWxlbWVudChSZWZQdHI8UHNldWRvRWxlbWVudD4mJiBwc2V1ZG9F
bGVtZW50KQogewogICAgIEFTU0VSVCghbV9hZnRlclBzZXVkb0VsZW1lbnQgfHwgIXBzZXVkb0Vs
ZW1lbnQpOwotICAgIG1fYWZ0ZXJQc2V1ZG9FbGVtZW50ID0gcHNldWRvRWxlbWVudDsKKyAgICBt
X2FmdGVyUHNldWRvRWxlbWVudCA9IFdURjo6bW92ZShwc2V1ZG9FbGVtZW50KTsKIH0KIAogaW5s
aW5lIHZvaWQgRWxlbWVudFJhcmVEYXRhOjpyZXNldENvbXB1dGVkU3R5bGUoKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvZG9tL1BzZXVkb0VsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9Qc2V1ZG9FbGVtZW50LmgKaW5kZXggNTQwMzBjMi4uOWNlMmJhYyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvZG9tL1BzZXVkb0VsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20v
UHNldWRvRWxlbWVudC5oCkBAIC0zNiw5ICszNiw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAog
Y2xhc3MgUHNldWRvRWxlbWVudCBmaW5hbCA6IHB1YmxpYyBFbGVtZW50IHsKIHB1YmxpYzoKLSAg
ICBzdGF0aWMgUGFzc1JlZlB0cjxQc2V1ZG9FbGVtZW50PiBjcmVhdGUoRWxlbWVudCYgaG9zdCwg
UHNldWRvSWQgcHNldWRvSWQpCisgICAgc3RhdGljIFJlZjxQc2V1ZG9FbGVtZW50PiBjcmVhdGUo
RWxlbWVudCYgaG9zdCwgUHNldWRvSWQgcHNldWRvSWQpCiAgICAgewotICAgICAgICByZXR1cm4g
YWRvcHRSZWYobmV3IFBzZXVkb0VsZW1lbnQoaG9zdCwgcHNldWRvSWQpKTsKKyAgICAgICAgcmV0
dXJuIGFkb3B0UmVmKCpuZXcgUHNldWRvRWxlbWVudChob3N0LCBwc2V1ZG9JZCkpOwogICAgIH0K
ICAgICB2aXJ0dWFsIH5Qc2V1ZG9FbGVtZW50KCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2RvbS9TaGFkb3dSb290LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vU2hhZG93Um9vdC5oCmlu
ZGV4IGUxZjg4YTYuLmNkMTBmMWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TaGFk
b3dSb290LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1NoYWRvd1Jvb3QuaApAQCAtNDMsOSAr
NDMsOSBAQCBwdWJsaWM6CiAgICAgICAgIFVzZXJBZ2VudFNoYWRvd1Jvb3QgPSAwLAogICAgIH07
CiAKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxTaGFkb3dSb290PiBjcmVhdGUoRG9jdW1lbnQmIGRv
Y3VtZW50LCBTaGFkb3dSb290VHlwZSB0eXBlKQorICAgIHN0YXRpYyBSZWY8U2hhZG93Um9vdD4g
Y3JlYXRlKERvY3VtZW50JiBkb2N1bWVudCwgU2hhZG93Um9vdFR5cGUgdHlwZSkKICAgICB7Ci0g
ICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgU2hhZG93Um9vdChkb2N1bWVudCwgdHlwZSkpOwor
ICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBTaGFkb3dSb290KGRvY3VtZW50LCB0eXBlKSk7
CiAgICAgfQogCiAgICAgdmlydHVhbCB+U2hhZG93Um9vdCgpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvc3R5bGUvU3R5bGVSZXNvbHZlVHJlZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdHls
ZS9TdHlsZVJlc29sdmVUcmVlLmNwcAppbmRleCBiODhkN2YzLi5iMzU2YjMyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVJlc29sdmVUcmVlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9zdHlsZS9TdHlsZVJlc29sdmVUcmVlLmNwcApAQCAtNTMyLDE0ICs1MzIsMTQgQEAg
c3RhdGljIFBzZXVkb0VsZW1lbnQqIGJlZm9yZU9yQWZ0ZXJQc2V1ZG9FbGVtZW50KEVsZW1lbnQm
IGN1cnJlbnQsIFBzZXVkb0lkIHBzZXUKICAgICByZXR1cm4gY3VycmVudC5hZnRlclBzZXVkb0Vs
ZW1lbnQoKTsKIH0KIAotc3RhdGljIHZvaWQgc2V0QmVmb3JlT3JBZnRlclBzZXVkb0VsZW1lbnQo
RWxlbWVudCYgY3VycmVudCwgUGFzc1JlZlB0cjxQc2V1ZG9FbGVtZW50PiBwc2V1ZG9FbGVtZW50
LCBQc2V1ZG9JZCBwc2V1ZG9JZCkKK3N0YXRpYyB2b2lkIHNldEJlZm9yZU9yQWZ0ZXJQc2V1ZG9F
bGVtZW50KEVsZW1lbnQmIGN1cnJlbnQsIFJlZjxQc2V1ZG9FbGVtZW50PiYmIHBzZXVkb0VsZW1l
bnQsIFBzZXVkb0lkIHBzZXVkb0lkKQogewogICAgIEFTU0VSVChwc2V1ZG9JZCA9PSBCRUZPUkUg
fHwgcHNldWRvSWQgPT0gQUZURVIpOwogICAgIGlmIChwc2V1ZG9JZCA9PSBCRUZPUkUpIHsKLSAg
ICAgICAgY3VycmVudC5zZXRCZWZvcmVQc2V1ZG9FbGVtZW50KHBzZXVkb0VsZW1lbnQpOworICAg
ICAgICBjdXJyZW50LnNldEJlZm9yZVBzZXVkb0VsZW1lbnQoV1RGOjptb3ZlKHBzZXVkb0VsZW1l
bnQpKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KLSAgICBjdXJyZW50LnNldEFmdGVyUHNldWRv
RWxlbWVudChwc2V1ZG9FbGVtZW50KTsKKyAgICBjdXJyZW50LnNldEFmdGVyUHNldWRvRWxlbWVu
dChXVEY6Om1vdmUocHNldWRvRWxlbWVudCkpOwogfQogCiBzdGF0aWMgdm9pZCBjbGVhckJlZm9y
ZU9yQWZ0ZXJQc2V1ZG9FbGVtZW50KEVsZW1lbnQmIGN1cnJlbnQsIFBzZXVkb0lkIHBzZXVkb0lk
KQpAQCAtNTkyLDkgKzU5Miw5IEBAIHN0YXRpYyB2b2lkIGF0dGFjaEJlZm9yZU9yQWZ0ZXJQc2V1
ZG9FbGVtZW50SWZOZWVkZWQoRWxlbWVudCYgY3VycmVudCwgUHNldWRvSWQKIHsKICAgICBpZiAo
IW5lZWRzUHNldWRvRWxlbWVudChjdXJyZW50LCBwc2V1ZG9JZCkpCiAgICAgICAgIHJldHVybjsK
LSAgICBSZWZQdHI8UHNldWRvRWxlbWVudD4gcHNldWRvRWxlbWVudCA9IFBzZXVkb0VsZW1lbnQ6
OmNyZWF0ZShjdXJyZW50LCBwc2V1ZG9JZCk7Ci0gICAgc2V0QmVmb3JlT3JBZnRlclBzZXVkb0Vs
ZW1lbnQoY3VycmVudCwgcHNldWRvRWxlbWVudCwgcHNldWRvSWQpOwotICAgIGF0dGFjaFJlbmRl
clRyZWUoKnBzZXVkb0VsZW1lbnQsICpjdXJyZW50LnJlbmRlclN0eWxlKCksIHJlbmRlclRyZWVQ
b3NpdGlvbiwgbnVsbHB0cik7CisgICAgUmVmPFBzZXVkb0VsZW1lbnQ+IHBzZXVkb0VsZW1lbnQg
PSBQc2V1ZG9FbGVtZW50OjpjcmVhdGUoY3VycmVudCwgcHNldWRvSWQpOworICAgIHNldEJlZm9y
ZU9yQWZ0ZXJQc2V1ZG9FbGVtZW50KGN1cnJlbnQsIHBzZXVkb0VsZW1lbnQuY29weVJlZigpLCBw
c2V1ZG9JZCk7CisgICAgYXR0YWNoUmVuZGVyVHJlZShwc2V1ZG9FbGVtZW50LmdldCgpLCAqY3Vy
cmVudC5yZW5kZXJTdHlsZSgpLCByZW5kZXJUcmVlUG9zaXRpb24sIG51bGxwdHIpOwogfQogCiBz
dGF0aWMgdm9pZCBhdHRhY2hSZW5kZXJUcmVlKEVsZW1lbnQmIGN1cnJlbnQsIFJlbmRlclN0eWxl
JiBpbmhlcml0ZWRTdHlsZSwgUmVuZGVyVHJlZVBvc2l0aW9uJiByZW5kZXJUcmVlUG9zaXRpb24s
IFBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+IHJlc29sdmVkU3R5bGUpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>