<?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>108300</bug_id>
          
          <creation_ts>2013-01-30 00:04:26 -0800</creation_ts>
          <short_desc>Clean up interface to ShadowRoot</short_desc>
          <delta_ts>2013-01-30 14:32:31 -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>New Bugs</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="Elliott Sprehn">esprehn</reporter>
          <assigned_to name="Elliott Sprehn">esprehn</assigned_to>
          <cc>dglazkov</cc>
    
    <cc>morrita</cc>
    
    <cc>ojan.autocc</cc>
    
    <cc>ojan</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>819860</commentid>
    <comment_count>0</comment_count>
    <who name="Elliott Sprehn">esprehn</who>
    <bug_when>2013-01-30 00:04:26 -0800</bug_when>
    <thetext>Clean up interface to ShadowRoot</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>819867</commentid>
    <comment_count>1</comment_count>
      <attachid>185410</attachid>
    <who name="Elliott Sprehn">esprehn</who>
    <bug_when>2013-01-30 00:11:42 -0800</bug_when>
    <thetext>Created attachment 185410
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>820283</commentid>
    <comment_count>2</comment_count>
      <attachid>185410</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2013-01-30 09:57:46 -0800</bug_when>
    <thetext>Comment on attachment 185410
Patch

Dude!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>820464</commentid>
    <comment_count>3</comment_count>
      <attachid>185546</attachid>
    <who name="Elliott Sprehn">esprehn</who>
    <bug_when>2013-01-30 13:18:42 -0800</bug_when>
    <thetext>Created attachment 185546
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>820581</commentid>
    <comment_count>4</comment_count>
      <attachid>185546</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-30 14:32:27 -0800</bug_when>
    <thetext>Comment on attachment 185546
Patch for landing

Clearing flags on attachment: 185546

Committed r141313: &lt;http://trac.webkit.org/changeset/141313&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>820582</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-30 14:32:31 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>185410</attachid>
            <date>2013-01-30 00:11:42 -0800</date>
            <delta_ts>2013-01-30 13:18:37 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-108300-20130130030826.patch</filename>
            <type>text/plain</type>
            <size>10221</size>
            <attacher name="Elliott Sprehn">esprehn</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxMjI3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzUwYjVjYWFlNjEyMGJk
NzJhNWIzZjJkMTFlMDFlNzE0ZTk4Y2UxNC4uNjNlYTk4Njk3MmI5MzFjNjJlMTM5NmI3ZDhiNzg0
YzE0MTMzYzM1MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDEzLTAxLTMwICBFbGxp
b3R0IFNwcmVobiAgPGVzcHJlaG5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIENsZWFuIHVwIGlu
dGVyZmFjZSB0byBTaGFkb3dSb290CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMDgzMDAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBMb3RzIG9mIGdlbmVyYWwgY2xlYW4gdXAgdG8gU2hhZG93Um9vdCByZW1v
dmluZyB1bnVzZWQgaGVhZGVycyBhbmQgZm9yd2FyZAorICAgICAgICBkZWNsYXJhdGlvbnMsIG1v
dmluZyBzaG9ydCBpbmxpbmUgbWV0aG9kcyBpbnRvIHRoZSBjbGFzcyBkZWZpbml0aW9uIHNvIGl0
J3MKKyAgICAgICAgZWFzaWVyIHRvIHVuZGVyc3RhbmQgd2hhdCBtZXRob2RzIGRvIHdoYXQsIGFu
ZCByZXBsYWNpbmcgbWFjcm9zIHdpdGggbWV0aG9kcworICAgICAgICB3aXRoIGlubGluZSBtZXRo
b2RzLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywganVzdCByZWZhY3RvcmluZy4KKworICAgICAg
ICAqIGRvbS9FbGVtZW50U2hhZG93LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnRTaGFk
b3c6OmFkZFNoYWRvd1Jvb3QpOgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudFNoYWRvdzo6cmVt
b3ZlQWxsU2hhZG93Um9vdHMpOgorICAgICAgICAqIGRvbS9TaGFkb3dSb290LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlNoYWRvd1Jvb3Q6OlNoYWRvd1Jvb3QpOgorICAgICAgICAoV2ViQ29yZTo6
U2hhZG93Um9vdDo6c2V0SW5uZXJIVE1MKTogVXNlIGlzT3JwaGFuIGluc3RlYWQgb2YgbWFjcm8u
CisgICAgICAgIChXZWJDb3JlOjpTaGFkb3dSb290OjpzZXRBcHBseUF1dGhvclN0eWxlcyk6IFVz
ZSBpc09ycGhhbiBpbnN0ZWFkIG9mIG1hY3JvLgorICAgICAgICAoV2ViQ29yZTo6U2hhZG93Um9v
dDo6c2V0UmVzZXRTdHlsZUluaGVyaXRhbmNlKTogVXNlIGlzT3JwaGFuIGluc3RlYWQgb2YgbWFj
cm8uCisgICAgICAgIChXZWJDb3JlOjpTaGFkb3dSb290OjpjaGlsZHJlbkNoYW5nZWQpOiBVc2Ug
aXNPcnBoYW4gaW5zdGVhZCBvZiBtYWNyby4KKyAgICAgICAgKiBkb20vU2hhZG93Um9vdC5oOgor
ICAgICAgICAoV2ViQ29yZTo6U2hhZG93Um9vdDo6c2V0SG9zdCk6IFJlbW92ZWQuCisgICAgICAg
IChXZWJDb3JlOjpTaGFkb3dSb290Ojpob3N0KToKKyAgICAgICAgKFdlYkNvcmU6OlNoYWRvd1Jv
b3Q6Om93bmVyKToKKyAgICAgICAgKFNoYWRvd1Jvb3QpOgorICAgICAgICAoV2ViQ29yZTo6U2hh
ZG93Um9vdDo6aXNPcnBoYW4pOiBSZXBsYWNlbWVudCBvZiBHdWFyZE9ycGhhblNoYWRvd1Jvb3Qg
bWFjcm8uCisKIDIwMTMtMDEtMjkgIEphbWVzIFJvYmluc29uICA8amFtZXNyQGNocm9taXVtLm9y
Zz4KIAogICAgICAgICBTY3JvbGxiYXIgYW5kIHNjcm9sbCBjb3JuZXIgY29tcG9zaXRlZCBsYXll
cnMgcG9zaXRpb25lZCBpbmNvcnJlY3RseQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9t
L0VsZW1lbnRTaGFkb3cuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnRTaGFkb3cuY3Bw
CmluZGV4IDI0ZjUzNjAyZjdmOWEyNmFhMjMxNTVmOTMxNDNhZTBlNTUzYzk0NDguLjM1YWJhNzA5
MzhiZGM3M2UyZWNhODcyZGNkMjkzZDE1ZTBkNGEwN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2RvbS9FbGVtZW50U2hhZG93LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVu
dFNoYWRvdy5jcHAKQEAgLTM5LDcgKzM5LDggQEAgU2hhZG93Um9vdCogRWxlbWVudFNoYWRvdzo6
YWRkU2hhZG93Um9vdChFbGVtZW50KiBzaGFkb3dIb3N0LCBTaGFkb3dSb290OjpTaGFkb3cKICAg
ICBpZiAodHlwZSA9PSBTaGFkb3dSb290OjpBdXRob3JTaGFkb3dSb290KQogICAgICAgICBzaGFk
b3dIb3N0LT53aWxsQWRkQXV0aG9yU2hhZG93Um9vdCgpOwogCi0gICAgc2hhZG93Um9vdC0+c2V0
SG9zdChzaGFkb3dIb3N0KTsKKyAgICBzaGFkb3dSb290LT5zZXRQYXJlbnRPckhvc3ROb2RlKHNo
YWRvd0hvc3QpOworICAgIHNoYWRvd1Jvb3QtPnNldFBhcmVudFRyZWVTY29wZShzaGFkb3dIb3N0
LT50cmVlU2NvcGUoKSk7CiAgICAgbV9zaGFkb3dSb290cy5wdXNoKHNoYWRvd1Jvb3QuZ2V0KCkp
OwogICAgIG1fZGlzdHJpYnV0b3IuZGlkU2hhZG93Qm91bmRhcnlDaGFuZ2Uoc2hhZG93SG9zdCk7
CiAgICAgQ2hpbGROb2RlSW5zZXJ0aW9uTm90aWZpZXIoc2hhZG93SG9zdCkubm90aWZ5KHNoYWRv
d1Jvb3QuZ2V0KCkpOwpAQCAtNzEsNyArNzIsNyBAQCB2b2lkIEVsZW1lbnRTaGFkb3c6OnJlbW92
ZUFsbFNoYWRvd1Jvb3RzKCkKICAgICAgICAgICAgIG9sZFJvb3QtPmRldGFjaCgpOwogCiAgICAg
ICAgIG1fc2hhZG93Um9vdHMucmVtb3ZlSGVhZCgpOwotICAgICAgICBvbGRSb290LT5zZXRIb3N0
KDApOworICAgICAgICBvbGRSb290LT5zZXRQYXJlbnRPckhvc3ROb2RlKDApOwogICAgICAgICBv
bGRSb290LT5zZXRQYXJlbnRUcmVlU2NvcGUoc2hhZG93SG9zdC0+ZG9jdW1lbnQoKSk7CiAgICAg
ICAgIG9sZFJvb3QtPnNldFByZXYoMCk7CiAgICAgICAgIG9sZFJvb3QtPnNldE5leHQoMCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2hhZG93Um9vdC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vU2hhZG93Um9vdC5jcHAKaW5kZXggY2E4ZjE4NGQ2NzhjZDExZjU4N2Y1YWU2Zjll
OTZkMjlhYmZhYmY5MC4uN2MzN2M0MDJjZGI3MjZlZTNlMjQ3ZjJkMTc0N2ZkOGRlNTg5Y2VmZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1NoYWRvd1Jvb3QuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9TaGFkb3dSb290LmNwcApAQCAtMjgsMzIgKzI4LDE0IEBACiAjaW5jbHVk
ZSAiU2hhZG93Um9vdC5oIgogCiAjaW5jbHVkZSAiQ29udGVudERpc3RyaWJ1dG9yLmgiCi0jaW5j
bHVkZSAiRE9NU2VsZWN0aW9uLmgiCi0jaW5jbHVkZSAiRE9NV2luZG93LmgiCi0jaW5jbHVkZSAi
RG9jdW1lbnQuaCIKLSNpbmNsdWRlICJEb2N1bWVudEZyYWdtZW50LmgiCi0jaW5jbHVkZSAiRWxl
bWVudC5oIgogI2luY2x1ZGUgIkVsZW1lbnRTaGFkb3cuaCIKLSNpbmNsdWRlICJIVE1MQ29udGVu
dEVsZW1lbnQuaCIKLSNpbmNsdWRlICJIVE1MSW5wdXRFbGVtZW50LmgiCi0jaW5jbHVkZSAiSFRN
TE5hbWVzLmgiCi0jaW5jbHVkZSAiSFRNTFRleHRBcmVhRWxlbWVudC5oIgogI2luY2x1ZGUgIkhp
c3RvZ3JhbVN1cHBvcnQuaCIKICNpbmNsdWRlICJJbnNlcnRpb25Qb2ludC5oIgotI2luY2x1ZGUg
Ik5vZGVSYXJlRGF0YS5oIgogI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKLSNp
bmNsdWRlICJTVkdOYW1lcy5oIgogI2luY2x1ZGUgIlN0eWxlUmVzb2x2ZXIuaCIKICNpbmNsdWRl
ICJUZXh0LmgiCiAjaW5jbHVkZSAibWFya3VwLmgiCiAKLS8vIEZJWE1FOiBUaGlzIHNob3VsZG4n
dCBoYXBwZW4uIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04ODgzNAot
I2RlZmluZSBHdWFyZE9ycGhhblNoYWRvd1Jvb3QocmVqZWN0U3RhdGVtZW50KSBcCi0gICAgaWYg
KCF0aGlzLT5ob3N0KCkpIHsgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICAgICAgcmVqZWN0
U3RhdGVtZW50OyAgICAgICAgICAgICAgICAgICAgICAgXAotICAgICAgICByZXR1cm47ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgfQotCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKIHN0cnVjdCBTYW1lU2l6ZUFzU2hhZG93Um9vdCA6IHB1YmxpYyBEb2N1bWVudEZyYWdtZW50
LCBwdWJsaWMgVHJlZVNjb3BlLCBwdWJsaWMgRG91Ymx5TGlua2VkTGlzdE5vZGU8U2hhZG93Um9v
dD4gewpAQCAtNjYsMjAgKzQ4LDkgQEAgQ09NUElMRV9BU1NFUlQoc2l6ZW9mKFNoYWRvd1Jvb3Qp
ID09IHNpemVvZihTYW1lU2l6ZUFzU2hhZG93Um9vdCksIHNoYWRvd3Jvb3Rfc2gKIGVudW0gU2hh
ZG93Um9vdFVzYWdlT3JpZ2luVHlwZSB7CiAgICAgU2hhZG93Um9vdFVzYWdlT3JpZ2luV2ViID0g
MCwKICAgICBTaGFkb3dSb290VXNhZ2VPcmlnaW5Ob3RXZWIsCi0gICAgU2hhZG93Um9vdFVzYWdl
T3JpZ2luVHlwZXMKKyAgICBTaGFkb3dSb290VXNhZ2VPcmlnaW5NYXgKIH07CiAKLXN0YXRpYyBp
bmxpbmUgU2hhZG93Um9vdFVzYWdlT3JpZ2luVHlwZSBkZXRlcm1pbmVVc2FnZVR5cGUoRG9jdW1l
bnQqIGRvY3VtZW50KQotewotICAgIC8vIEVuYWJsZXMgb25seSBvbiBDSFJPTUlVTSBzaW5jZSB0
aGlzIGNvc3Qgd29uJ3Qgd29ydGggcGF5aW5nIGZvciBwbGF0Zm9ybXMgd2hpY2ggZG9uJ3QgY29s
bGVjdCB0aGlzIG1ldHJpY3MuCi0jaWYgUExBVEZPUk0oQ0hST01JVU0pCi0gICAgcmV0dXJuIGRv
Y3VtZW50LT51cmwoKS5zdHJpbmcoKS5zdGFydHNXaXRoKCJodHRwIikgPyBTaGFkb3dSb290VXNh
Z2VPcmlnaW5XZWIgOiBTaGFkb3dSb290VXNhZ2VPcmlnaW5Ob3RXZWI7Ci0jZWxzZQotICAgIFVO
VVNFRF9QQVJBTShkb2N1bWVudCk7Ci0gICAgcmV0dXJuIFNoYWRvd1Jvb3RVc2FnZU9yaWdpbldl
YjsKLSNlbmRpZgotfQotCiBTaGFkb3dSb290OjpTaGFkb3dSb290KERvY3VtZW50KiBkb2N1bWVu
dCwgU2hhZG93Um9vdFR5cGUgdHlwZSkKICAgICA6IERvY3VtZW50RnJhZ21lbnQoZG9jdW1lbnQs
IENyZWF0ZVNoYWRvd1Jvb3QpCiAgICAgLCBUcmVlU2NvcGUodGhpcywgZG9jdW1lbnQpCkBAIC05
NCw4ICs2NSwxMiBAQCBTaGFkb3dSb290OjpTaGFkb3dSb290KERvY3VtZW50KiBkb2N1bWVudCwg
U2hhZG93Um9vdFR5cGUgdHlwZSkKICAgICBBU1NFUlQoZG9jdW1lbnQpOwogICAgIHNldFRyZWVT
Y29wZSh0aGlzKTsKIAotICAgIGlmICh0eXBlID09IFNoYWRvd1Jvb3Q6OkF1dGhvclNoYWRvd1Jv
b3QpCi0gICAgICAgIEhpc3RvZ3JhbVN1cHBvcnQ6Omhpc3RvZ3JhbUVudW1lcmF0aW9uKCJXZWJD
b3JlLlNoYWRvd1Jvb3QuY29uc3RydWN0b3IiLCBkZXRlcm1pbmVVc2FnZVR5cGUoZG9jdW1lbnQp
LCBTaGFkb3dSb290VXNhZ2VPcmlnaW5UeXBlcyk7CisjaWYgUExBVEZPUk0oQ0hST01JVU0pCisg
ICAgaWYgKHR5cGUgPT0gU2hhZG93Um9vdDo6QXV0aG9yU2hhZG93Um9vdCkgeworICAgICAgICBT
aGFkb3dSb290VXNhZ2VPcmlnaW5UeXBlIHVzYWdlVHlwZSA9IGRvY3VtZW50LT51cmwoKS5wcm90
b2NvbElzSW5IVFRQRmFtaWx5KCkgPyBTaGFkb3dSb290VXNhZ2VPcmlnaW5XZWIgOiBTaGFkb3dS
b290VXNhZ2VPcmlnaW5Ob3RXZWI7CisgICAgICAgIEhpc3RvZ3JhbVN1cHBvcnQ6Omhpc3RvZ3Jh
bUVudW1lcmF0aW9uKCJXZWJDb3JlLlNoYWRvd1Jvb3QuY29uc3RydWN0b3IiLCB1c2FnZVR5cGUs
IFNoYWRvd1Jvb3RVc2FnZU9yaWdpbk1heCk7CisgICAgfQorI2VuZGlmCiB9CiAKIFNoYWRvd1Jv
b3Q6On5TaGFkb3dSb290KCkKQEAgLTExNCwxMiArODksNiBAQCBTaGFkb3dSb290Ojp+U2hhZG93
Um9vdCgpCiAgICAgICAgIGNsZWFyUmFyZURhdGEoKTsKIH0KIAotUGFzc1JlZlB0cjxOb2RlPiBT
aGFkb3dSb290OjpjbG9uZU5vZGUoYm9vbCkKLXsKLSAgICAvLyBTaGFkb3dSb290IHNob3VsZCBu
b3QgYmUgYXJiaXRyYXJpbHkgY2xvbmVkLgotICAgIHJldHVybiAwOwotfQotCiBQYXNzUmVmUHRy
PE5vZGU+IFNoYWRvd1Jvb3Q6OmNsb25lTm9kZShib29sLCBFeGNlcHRpb25Db2RlJiBlYykKIHsK
ICAgICBlYyA9IERBVEFfQ0xPTkVfRVJSOwpAQCAtMTMzLDcgKzEwMiwxMCBAQCBTdHJpbmcgU2hh
ZG93Um9vdDo6aW5uZXJIVE1MKCkgY29uc3QKIAogdm9pZCBTaGFkb3dSb290OjpzZXRJbm5lckhU
TUwoY29uc3QgU3RyaW5nJiBtYXJrdXAsIEV4Y2VwdGlvbkNvZGUmIGVjKQogewotICAgIEd1YXJk
T3JwaGFuU2hhZG93Um9vdChlYyA9IElOVkFMSURfQUNDRVNTX0VSUik7CisgICAgaWYgKGlzT3Jw
aGFuKCkpIHsKKyAgICAgICAgZWMgPSBJTlZBTElEX0FDQ0VTU19FUlI7CisgICAgICAgIHJldHVy
bjsKKyAgICB9CiAKICAgICBpZiAoUmVmUHRyPERvY3VtZW50RnJhZ21lbnQ+IGZyYWdtZW50ID0g
Y3JlYXRlRnJhZ21lbnRGb3JJbm5lck91dGVySFRNTChtYXJrdXAsIGhvc3QoKSwgQWxsb3dTY3Jp
cHRpbmdDb250ZW50LCBlYykpCiAgICAgICAgIHJlcGxhY2VDaGlsZHJlbldpdGhGcmFnbWVudCh0
aGlzLCBmcmFnbWVudC5yZWxlYXNlKCksIGVjKTsKQEAgLTE3NCwyMSArMTQ2LDEwIEBAIHZvaWQg
U2hhZG93Um9vdDo6cmVjYWxjU3R5bGUoU3R5bGVDaGFuZ2UgY2hhbmdlKQogICAgIGNsZWFyQ2hp
bGROZWVkc1N0eWxlUmVjYWxjKCk7CiB9CiAKLUVsZW1lbnRTaGFkb3cqIFNoYWRvd1Jvb3Q6Om93
bmVyKCkgY29uc3QKLXsKLSAgICBpZiAoaG9zdCgpKQotICAgICAgICByZXR1cm4gaG9zdCgpLT5z
aGFkb3coKTsKLSAgICByZXR1cm4gMDsKLX0KLQotYm9vbCBTaGFkb3dSb290OjphcHBseUF1dGhv
clN0eWxlcygpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fYXBwbHlBdXRob3JTdHlsZXM7Ci19Ci0K
IHZvaWQgU2hhZG93Um9vdDo6c2V0QXBwbHlBdXRob3JTdHlsZXMoYm9vbCB2YWx1ZSkKIHsKLSAg
ICBHdWFyZE9ycGhhblNoYWRvd1Jvb3QoeyB9KTsKKyAgICBpZiAoaXNPcnBoYW4oKSkKKyAgICAg
ICAgcmV0dXJuOwogCiAgICAgaWYgKG1fYXBwbHlBdXRob3JTdHlsZXMgIT0gdmFsdWUpIHsKICAg
ICAgICAgbV9hcHBseUF1dGhvclN0eWxlcyA9IHZhbHVlOwpAQCAtMTk2LDE0ICsxNTcsMTAgQEAg
dm9pZCBTaGFkb3dSb290OjpzZXRBcHBseUF1dGhvclN0eWxlcyhib29sIHZhbHVlKQogICAgIH0K
IH0KIAotYm9vbCBTaGFkb3dSb290OjpyZXNldFN0eWxlSW5oZXJpdGFuY2UoKSBjb25zdAotewot
ICAgIHJldHVybiBtX3Jlc2V0U3R5bGVJbmhlcml0YW5jZTsKLX0KLQogdm9pZCBTaGFkb3dSb290
OjpzZXRSZXNldFN0eWxlSW5oZXJpdGFuY2UoYm9vbCB2YWx1ZSkKIHsKLSAgICBHdWFyZE9ycGhh
blNoYWRvd1Jvb3QoeyB9KTsKKyAgICBpZiAoaXNPcnBoYW4oKSkKKyAgICAgICAgcmV0dXJuOwog
CiAgICAgaWYgKHZhbHVlICE9IG1fcmVzZXRTdHlsZUluaGVyaXRhbmNlKSB7CiAgICAgICAgIG1f
cmVzZXRTdHlsZUluaGVyaXRhbmNlID0gdmFsdWU7CkBAIC0yNTgsNyArMjE1LDggQEAgdm9pZCBT
aGFkb3dSb290OjpyZW1vdmVkRnJvbShDb250YWluZXJOb2RlKiBpbnNlcnRpb25Qb2ludCkKIAog
dm9pZCBTaGFkb3dSb290OjpjaGlsZHJlbkNoYW5nZWQoYm9vbCBjaGFuZ2VkQnlQYXJzZXIsIE5v
ZGUqIGJlZm9yZUNoYW5nZSwgTm9kZSogYWZ0ZXJDaGFuZ2UsIGludCBjaGlsZENvdW50RGVsdGEp
CiB7Ci0gICAgR3VhcmRPcnBoYW5TaGFkb3dSb290KHsgfSk7CisgICAgaWYgKGlzT3JwaGFuKCkp
CisgICAgICAgIHJldHVybjsKIAogICAgIENvbnRhaW5lck5vZGU6OmNoaWxkcmVuQ2hhbmdlZChj
aGFuZ2VkQnlQYXJzZXIsIGJlZm9yZUNoYW5nZSwgYWZ0ZXJDaGFuZ2UsIGNoaWxkQ291bnREZWx0
YSk7CiAgICAgb3duZXIoKS0+aW52YWxpZGF0ZURpc3RyaWJ1dGlvbigpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvZG9tL1NoYWRvd1Jvb3QuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TaGFk
b3dSb290LmgKaW5kZXggMGY4NTkyMjI1OGNlNzIxMDAwMTVmMGUwZTA1NDNlNTNlZWY2NmE2OS4u
YjYzOWU2OGU0ZjE3YzBkYTRhMTBiMjRkMWZmODU3YWNjNDc1OTNhZSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvZG9tL1NoYWRvd1Jvb3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU2hh
ZG93Um9vdC5oCkBAIC0zNywxMCArMzcsNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNs
YXNzIERvY3VtZW50OwotY2xhc3MgRE9NU2VsZWN0aW9uOwogY2xhc3MgRWxlbWVudFNoYWRvdzsK
LWNsYXNzIEluc2VydGlvblBvaW50OwogY2xhc3MgU2NvcGVDb250ZW50RGlzdHJpYnV0aW9uOwog
CiBjbGFzcyBTaGFkb3dSb290IDogcHVibGljIERvY3VtZW50RnJhZ21lbnQsIHB1YmxpYyBUcmVl
U2NvcGUsIHB1YmxpYyBEb3VibHlMaW5rZWRMaXN0Tm9kZTxTaGFkb3dSb290PiB7CkBAIC02Miwx
NCArNTksMTMgQEAgcHVibGljOgogCiAgICAgdm9pZCByZWNhbGNTdHlsZShTdHlsZUNoYW5nZSk7
CiAKLSAgICB2aXJ0dWFsIGJvb2wgYXBwbHlBdXRob3JTdHlsZXMoKSBjb25zdCBPVkVSUklERTsK
KyAgICB2aXJ0dWFsIGJvb2wgYXBwbHlBdXRob3JTdHlsZXMoKSBjb25zdCBPVkVSUklERSB7IHJl
dHVybiBtX2FwcGx5QXV0aG9yU3R5bGVzOyB9CiAgICAgdm9pZCBzZXRBcHBseUF1dGhvclN0eWxl
cyhib29sKTsKLSAgICB2aXJ0dWFsIGJvb2wgcmVzZXRTdHlsZUluaGVyaXRhbmNlKCkgY29uc3Qg
T1ZFUlJJREU7CisgICAgdmlydHVhbCBib29sIHJlc2V0U3R5bGVJbmhlcml0YW5jZSgpIGNvbnN0
IE9WRVJSSURFIHsgcmV0dXJuIG1fcmVzZXRTdHlsZUluaGVyaXRhbmNlOyB9CiAgICAgdm9pZCBz
ZXRSZXNldFN0eWxlSW5oZXJpdGFuY2UoYm9vbCk7CiAKLSAgICBFbGVtZW50KiBob3N0KCkgY29u
c3Q7Ci0gICAgdm9pZCBzZXRIb3N0KEVsZW1lbnQqKTsKLSAgICBFbGVtZW50U2hhZG93KiBvd25l
cigpIGNvbnN0OworICAgIEVsZW1lbnQqIGhvc3QoKSBjb25zdCB7IHJldHVybiB0b0VsZW1lbnQo
cGFyZW50T3JIb3N0Tm9kZSgpKTsgfQorICAgIEVsZW1lbnRTaGFkb3cqIG93bmVyKCkgY29uc3Qg
eyByZXR1cm4gaG9zdCgpID8gaG9zdCgpLT5zaGFkb3coKSA6IDA7IH0KIAogICAgIFN0cmluZyBp
bm5lckhUTUwoKSBjb25zdDsKICAgICB2b2lkIHNldElubmVySFRNTChjb25zdCBTdHJpbmcmLCBF
eGNlcHRpb25Db2RlJik7CkBAIC0xMDMsMTAgKzk5LDE2IEBAIHB1YmxpYzoKIHByaXZhdGU6CiAg
ICAgU2hhZG93Um9vdChEb2N1bWVudCosIFNoYWRvd1Jvb3RUeXBlKTsKICAgICB2aXJ0dWFsIH5T
aGFkb3dSb290KCk7Ci0gICAgdmlydHVhbCBQYXNzUmVmUHRyPE5vZGU+IGNsb25lTm9kZShib29s
IGRlZXApOwotICAgIHZpcnR1YWwgYm9vbCBjaGlsZFR5cGVBbGxvd2VkKE5vZGVUeXBlKSBjb25z
dDsKKworICAgIHZpcnR1YWwgYm9vbCBjaGlsZFR5cGVBbGxvd2VkKE5vZGVUeXBlKSBjb25zdCBP
VkVSUklERTsKICAgICB2aXJ0dWFsIHZvaWQgY2hpbGRyZW5DaGFuZ2VkKGJvb2wgY2hhbmdlZEJ5
UGFyc2VyLCBOb2RlKiBiZWZvcmVDaGFuZ2UsIE5vZGUqIGFmdGVyQ2hhbmdlLCBpbnQgY2hpbGRD
b3VudERlbHRhKSBPVkVSUklERTsKIAorICAgIC8vIFNoYWRvd1Jvb3RzIHNob3VsZCBuZXZlciBi
ZSBjbG9uZWQuCisgICAgdmlydHVhbCBQYXNzUmVmUHRyPE5vZGU+IGNsb25lTm9kZShib29sKSBP
VkVSUklERSB7IHJldHVybiAwOyB9CisKKyAgICAvLyBGSVhNRTogVGhpcyBzaG91bGRuJ3QgaGFw
cGVuLiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODg4MzQKKyAgICBi
b29sIGlzT3JwaGFuKCkgY29uc3QgeyByZXR1cm4gIWhvc3QoKTsgfQorCiAgICAgU2hhZG93Um9v
dCogbV9wcmV2OwogICAgIFNoYWRvd1Jvb3QqIG1fbmV4dDsKICAgICBPd25QdHI8U2NvcGVDb250
ZW50RGlzdHJpYnV0aW9uPiBtX3Njb3BlRGlzdHJpYnV0aW9uOwpAQCAtMTE3LDE4ICsxMTksNiBA
QCBwcml2YXRlOgogICAgIHVuc2lnbmVkIG1fcmVnaXN0ZXJlZFdpdGhQYXJlbnRTaGFkb3dSb290
IDogMTsKIH07CiAKLWlubGluZSBFbGVtZW50KiBTaGFkb3dSb290Ojpob3N0KCkgY29uc3QKLXsK
LSAgICByZXR1cm4gdG9FbGVtZW50KHBhcmVudE9ySG9zdE5vZGUoKSk7Ci19Ci0KLWlubGluZSB2
b2lkIFNoYWRvd1Jvb3Q6OnNldEhvc3QoRWxlbWVudCogaG9zdCkKLXsKLSAgICBzZXRQYXJlbnRP
ckhvc3ROb2RlKGhvc3QpOwotICAgIGlmIChob3N0KQotICAgICAgICBzZXRQYXJlbnRUcmVlU2Nv
cGUoaG9zdC0+dHJlZVNjb3BlKCkpOwotfQotCiBpbmxpbmUgRWxlbWVudCogU2hhZG93Um9vdDo6
YWN0aXZlRWxlbWVudCgpIGNvbnN0CiB7CiAgICAgaWYgKE5vZGUqIG5vZGUgPSB0cmVlU2NvcGUo
KS0+Zm9jdXNlZE5vZGUoKSkK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>185546</attachid>
            <date>2013-01-30 13:18:42 -0800</date>
            <delta_ts>2013-01-30 14:32:27 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-108300-20130130161527.patch</filename>
            <type>text/plain</type>
            <size>10196</size>
            <attacher name="Elliott Sprehn">esprehn</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxMzAzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWExZDgxYmQ1OTg3YzRk
MjZiNGNlMGU3M2YzYjNiZjI2MmUyNjIyZi4uYWYwMjk3Zjc1NmVmNjc5NDdkOGU4MjYwNDg5YWU1
ZGY3YjU3OTdmYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDEzLTAxLTMwICBFbGxp
b3R0IFNwcmVobiAgPGVzcHJlaG5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIENsZWFuIHVwIGlu
dGVyZmFjZSB0byBTaGFkb3dSb290CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMDgzMDAKKworICAgICAgICBSZXZpZXdlZCBieSBEaW1pdHJpIEdsYXpr
b3YuCisKKyAgICAgICAgTG90cyBvZiBnZW5lcmFsIGNsZWFuIHVwIHRvIFNoYWRvd1Jvb3QgcmVt
b3ZpbmcgdW51c2VkIGhlYWRlcnMgYW5kIGZvcndhcmQKKyAgICAgICAgZGVjbGFyYXRpb25zLCBt
b3Zpbmcgc2hvcnQgaW5saW5lIG1ldGhvZHMgaW50byB0aGUgY2xhc3MgZGVmaW5pdGlvbiBzbyBp
dCdzCisgICAgICAgIGVhc2llciB0byB1bmRlcnN0YW5kIHdoYXQgbWV0aG9kcyBkbyB3aGF0LCBh
bmQgcmVwbGFjaW5nIG1hY3JvcyB3aXRoIG1ldGhvZHMKKyAgICAgICAgd2l0aCBpbmxpbmUgbWV0
aG9kcy4KKworICAgICAgICBObyBuZXcgdGVzdHMsIGp1c3QgcmVmYWN0b3JpbmcuCisKKyAgICAg
ICAgKiBkb20vRWxlbWVudFNoYWRvdy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFbGVtZW50U2hh
ZG93OjphZGRTaGFkb3dSb290KToKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnRTaGFkb3c6OnJl
bW92ZUFsbFNoYWRvd1Jvb3RzKToKKyAgICAgICAgKiBkb20vU2hhZG93Um9vdC5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpTaGFkb3dSb290OjpTaGFkb3dSb290KToKKyAgICAgICAgKFdlYkNvcmU6
OlNoYWRvd1Jvb3Q6OnNldElubmVySFRNTCk6IFVzZSBpc09ycGhhbiBpbnN0ZWFkIG9mIG1hY3Jv
LgorICAgICAgICAoV2ViQ29yZTo6U2hhZG93Um9vdDo6c2V0QXBwbHlBdXRob3JTdHlsZXMpOiBV
c2UgaXNPcnBoYW4gaW5zdGVhZCBvZiBtYWNyby4KKyAgICAgICAgKFdlYkNvcmU6OlNoYWRvd1Jv
b3Q6OnNldFJlc2V0U3R5bGVJbmhlcml0YW5jZSk6IFVzZSBpc09ycGhhbiBpbnN0ZWFkIG9mIG1h
Y3JvLgorICAgICAgICAoV2ViQ29yZTo6U2hhZG93Um9vdDo6Y2hpbGRyZW5DaGFuZ2VkKTogVXNl
IGlzT3JwaGFuIGluc3RlYWQgb2YgbWFjcm8uCisgICAgICAgICogZG9tL1NoYWRvd1Jvb3QuaDoK
KyAgICAgICAgKFdlYkNvcmU6OlNoYWRvd1Jvb3Q6OnNldEhvc3QpOiBSZW1vdmVkLgorICAgICAg
ICAoV2ViQ29yZTo6U2hhZG93Um9vdDo6aG9zdCk6CisgICAgICAgIChXZWJDb3JlOjpTaGFkb3dS
b290Ojpvd25lcik6CisgICAgICAgIChTaGFkb3dSb290KToKKyAgICAgICAgKFdlYkNvcmU6OlNo
YWRvd1Jvb3Q6OmlzT3JwaGFuKTogUmVwbGFjZW1lbnQgb2YgR3VhcmRPcnBoYW5TaGFkb3dSb290
IG1hY3JvLgorCiAyMDEzLTAxLTMwICBQaGlsaXAgUm9nZXJzICA8cGRyQGdvb2dsZS5jb20+CiAK
ICAgICAgICAgVHJhY2sgc2NhbGUgYW5kIHpvb20gdG9nZXRoZXIgd2hlbiBkcmF3aW5nIFNWRyBp
bWFnZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50U2hhZG93LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50U2hhZG93LmNwcAppbmRleCBlNmViZmEzNDM0NjA1
NzhlN2ViNGY3YmQ3YjVkZDlmNDYxMzA4NWQ2Li5mY2IzN2UzZDA5MDc2M2Y1NjRiM2YxOGI4MWY0
YjlhOGNhZWUwOTA0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudFNoYWRv
dy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnRTaGFkb3cuY3BwCkBAIC0zNiw3
ICszNiw4IEBAIFNoYWRvd1Jvb3QqIEVsZW1lbnRTaGFkb3c6OmFkZFNoYWRvd1Jvb3QoRWxlbWVu
dCogc2hhZG93SG9zdCwgU2hhZG93Um9vdDo6U2hhZG93CiB7CiAgICAgUmVmUHRyPFNoYWRvd1Jv
b3Q+IHNoYWRvd1Jvb3QgPSBTaGFkb3dSb290OjpjcmVhdGUoc2hhZG93SG9zdC0+ZG9jdW1lbnQo
KSwgdHlwZSk7CiAKLSAgICBzaGFkb3dSb290LT5zZXRIb3N0KHNoYWRvd0hvc3QpOworICAgIHNo
YWRvd1Jvb3QtPnNldFBhcmVudE9ySG9zdE5vZGUoc2hhZG93SG9zdCk7CisgICAgc2hhZG93Um9v
dC0+c2V0UGFyZW50VHJlZVNjb3BlKHNoYWRvd0hvc3QtPnRyZWVTY29wZSgpKTsKICAgICBtX3No
YWRvd1Jvb3RzLnB1c2goc2hhZG93Um9vdC5nZXQoKSk7CiAgICAgbV9kaXN0cmlidXRvci5kaWRT
aGFkb3dCb3VuZGFyeUNoYW5nZShzaGFkb3dIb3N0KTsKICAgICBDaGlsZE5vZGVJbnNlcnRpb25O
b3RpZmllcihzaGFkb3dIb3N0KS5ub3RpZnkoc2hhZG93Um9vdC5nZXQoKSk7CkBAIC02OCw3ICs2
OSw3IEBAIHZvaWQgRWxlbWVudFNoYWRvdzo6cmVtb3ZlQWxsU2hhZG93Um9vdHMoKQogICAgICAg
ICAgICAgb2xkUm9vdC0+ZGV0YWNoKCk7CiAKICAgICAgICAgbV9zaGFkb3dSb290cy5yZW1vdmVI
ZWFkKCk7Ci0gICAgICAgIG9sZFJvb3QtPnNldEhvc3QoMCk7CisgICAgICAgIG9sZFJvb3QtPnNl
dFBhcmVudE9ySG9zdE5vZGUoMCk7CiAgICAgICAgIG9sZFJvb3QtPnNldFBhcmVudFRyZWVTY29w
ZShzaGFkb3dIb3N0LT5kb2N1bWVudCgpKTsKICAgICAgICAgb2xkUm9vdC0+c2V0UHJldigwKTsK
ICAgICAgICAgb2xkUm9vdC0+c2V0TmV4dCgwKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9TaGFkb3dSb290LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TaGFkb3dSb290LmNwcApp
bmRleCBjYThmMTg0ZDY3OGNkMTFmNTg3ZjVhZTZmOWU5NmQyOWFiZmFiZjkwLi43YzM3YzQwMmNk
YjcyNmVlM2UyNDdmMmQxNzQ3ZmQ4ZGU1ODljZWZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9kb20vU2hhZG93Um9vdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1NoYWRvd1Jvb3Qu
Y3BwCkBAIC0yOCwzMiArMjgsMTQgQEAKICNpbmNsdWRlICJTaGFkb3dSb290LmgiCiAKICNpbmNs
dWRlICJDb250ZW50RGlzdHJpYnV0b3IuaCIKLSNpbmNsdWRlICJET01TZWxlY3Rpb24uaCIKLSNp
bmNsdWRlICJET01XaW5kb3cuaCIKLSNpbmNsdWRlICJEb2N1bWVudC5oIgotI2luY2x1ZGUgIkRv
Y3VtZW50RnJhZ21lbnQuaCIKLSNpbmNsdWRlICJFbGVtZW50LmgiCiAjaW5jbHVkZSAiRWxlbWVu
dFNoYWRvdy5oIgotI2luY2x1ZGUgIkhUTUxDb250ZW50RWxlbWVudC5oIgotI2luY2x1ZGUgIkhU
TUxJbnB1dEVsZW1lbnQuaCIKLSNpbmNsdWRlICJIVE1MTmFtZXMuaCIKLSNpbmNsdWRlICJIVE1M
VGV4dEFyZWFFbGVtZW50LmgiCiAjaW5jbHVkZSAiSGlzdG9ncmFtU3VwcG9ydC5oIgogI2luY2x1
ZGUgIkluc2VydGlvblBvaW50LmgiCi0jaW5jbHVkZSAiTm9kZVJhcmVEYXRhLmgiCiAjaW5jbHVk
ZSAiUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oIgotI2luY2x1ZGUgIlNWR05hbWVzLmgiCiAjaW5j
bHVkZSAiU3R5bGVSZXNvbHZlci5oIgogI2luY2x1ZGUgIlRleHQuaCIKICNpbmNsdWRlICJtYXJr
dXAuaCIKIAotLy8gRklYTUU6IFRoaXMgc2hvdWxkbid0IGhhcHBlbi4gaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg4ODM0Ci0jZGVmaW5lIEd1YXJkT3JwaGFuU2hhZG93
Um9vdChyZWplY3RTdGF0ZW1lbnQpIFwKLSAgICBpZiAoIXRoaXMtPmhvc3QoKSkgeyAgICAgICAg
ICAgICAgICAgICAgICAgXAotICAgICAgICByZWplY3RTdGF0ZW1lbnQ7ICAgICAgICAgICAgICAg
ICAgICAgICBcCi0gICAgICAgIHJldHVybjsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwKLSAgICB9Ci0KIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogc3RydWN0IFNhbWVTaXplQXNTaGFk
b3dSb290IDogcHVibGljIERvY3VtZW50RnJhZ21lbnQsIHB1YmxpYyBUcmVlU2NvcGUsIHB1Ymxp
YyBEb3VibHlMaW5rZWRMaXN0Tm9kZTxTaGFkb3dSb290PiB7CkBAIC02NiwyMCArNDgsOSBAQCBD
T01QSUxFX0FTU0VSVChzaXplb2YoU2hhZG93Um9vdCkgPT0gc2l6ZW9mKFNhbWVTaXplQXNTaGFk
b3dSb290KSwgc2hhZG93cm9vdF9zaAogZW51bSBTaGFkb3dSb290VXNhZ2VPcmlnaW5UeXBlIHsK
ICAgICBTaGFkb3dSb290VXNhZ2VPcmlnaW5XZWIgPSAwLAogICAgIFNoYWRvd1Jvb3RVc2FnZU9y
aWdpbk5vdFdlYiwKLSAgICBTaGFkb3dSb290VXNhZ2VPcmlnaW5UeXBlcworICAgIFNoYWRvd1Jv
b3RVc2FnZU9yaWdpbk1heAogfTsKIAotc3RhdGljIGlubGluZSBTaGFkb3dSb290VXNhZ2VPcmln
aW5UeXBlIGRldGVybWluZVVzYWdlVHlwZShEb2N1bWVudCogZG9jdW1lbnQpCi17Ci0gICAgLy8g
RW5hYmxlcyBvbmx5IG9uIENIUk9NSVVNIHNpbmNlIHRoaXMgY29zdCB3b24ndCB3b3J0aCBwYXlp
bmcgZm9yIHBsYXRmb3JtcyB3aGljaCBkb24ndCBjb2xsZWN0IHRoaXMgbWV0cmljcy4KLSNpZiBQ
TEFURk9STShDSFJPTUlVTSkKLSAgICByZXR1cm4gZG9jdW1lbnQtPnVybCgpLnN0cmluZygpLnN0
YXJ0c1dpdGgoImh0dHAiKSA/IFNoYWRvd1Jvb3RVc2FnZU9yaWdpbldlYiA6IFNoYWRvd1Jvb3RV
c2FnZU9yaWdpbk5vdFdlYjsKLSNlbHNlCi0gICAgVU5VU0VEX1BBUkFNKGRvY3VtZW50KTsKLSAg
ICByZXR1cm4gU2hhZG93Um9vdFVzYWdlT3JpZ2luV2ViOwotI2VuZGlmCi19Ci0KIFNoYWRvd1Jv
b3Q6OlNoYWRvd1Jvb3QoRG9jdW1lbnQqIGRvY3VtZW50LCBTaGFkb3dSb290VHlwZSB0eXBlKQog
ICAgIDogRG9jdW1lbnRGcmFnbWVudChkb2N1bWVudCwgQ3JlYXRlU2hhZG93Um9vdCkKICAgICAs
IFRyZWVTY29wZSh0aGlzLCBkb2N1bWVudCkKQEAgLTk0LDggKzY1LDEyIEBAIFNoYWRvd1Jvb3Q6
OlNoYWRvd1Jvb3QoRG9jdW1lbnQqIGRvY3VtZW50LCBTaGFkb3dSb290VHlwZSB0eXBlKQogICAg
IEFTU0VSVChkb2N1bWVudCk7CiAgICAgc2V0VHJlZVNjb3BlKHRoaXMpOwogCi0gICAgaWYgKHR5
cGUgPT0gU2hhZG93Um9vdDo6QXV0aG9yU2hhZG93Um9vdCkKLSAgICAgICAgSGlzdG9ncmFtU3Vw
cG9ydDo6aGlzdG9ncmFtRW51bWVyYXRpb24oIldlYkNvcmUuU2hhZG93Um9vdC5jb25zdHJ1Y3Rv
ciIsIGRldGVybWluZVVzYWdlVHlwZShkb2N1bWVudCksIFNoYWRvd1Jvb3RVc2FnZU9yaWdpblR5
cGVzKTsKKyNpZiBQTEFURk9STShDSFJPTUlVTSkKKyAgICBpZiAodHlwZSA9PSBTaGFkb3dSb290
OjpBdXRob3JTaGFkb3dSb290KSB7CisgICAgICAgIFNoYWRvd1Jvb3RVc2FnZU9yaWdpblR5cGUg
dXNhZ2VUeXBlID0gZG9jdW1lbnQtPnVybCgpLnByb3RvY29sSXNJbkhUVFBGYW1pbHkoKSA/IFNo
YWRvd1Jvb3RVc2FnZU9yaWdpbldlYiA6IFNoYWRvd1Jvb3RVc2FnZU9yaWdpbk5vdFdlYjsKKyAg
ICAgICAgSGlzdG9ncmFtU3VwcG9ydDo6aGlzdG9ncmFtRW51bWVyYXRpb24oIldlYkNvcmUuU2hh
ZG93Um9vdC5jb25zdHJ1Y3RvciIsIHVzYWdlVHlwZSwgU2hhZG93Um9vdFVzYWdlT3JpZ2luTWF4
KTsKKyAgICB9CisjZW5kaWYKIH0KIAogU2hhZG93Um9vdDo6flNoYWRvd1Jvb3QoKQpAQCAtMTE0
LDEyICs4OSw2IEBAIFNoYWRvd1Jvb3Q6On5TaGFkb3dSb290KCkKICAgICAgICAgY2xlYXJSYXJl
RGF0YSgpOwogfQogCi1QYXNzUmVmUHRyPE5vZGU+IFNoYWRvd1Jvb3Q6OmNsb25lTm9kZShib29s
KQotewotICAgIC8vIFNoYWRvd1Jvb3Qgc2hvdWxkIG5vdCBiZSBhcmJpdHJhcmlseSBjbG9uZWQu
Ci0gICAgcmV0dXJuIDA7Ci19Ci0KIFBhc3NSZWZQdHI8Tm9kZT4gU2hhZG93Um9vdDo6Y2xvbmVO
b2RlKGJvb2wsIEV4Y2VwdGlvbkNvZGUmIGVjKQogewogICAgIGVjID0gREFUQV9DTE9ORV9FUlI7
CkBAIC0xMzMsNyArMTAyLDEwIEBAIFN0cmluZyBTaGFkb3dSb290Ojppbm5lckhUTUwoKSBjb25z
dAogCiB2b2lkIFNoYWRvd1Jvb3Q6OnNldElubmVySFRNTChjb25zdCBTdHJpbmcmIG1hcmt1cCwg
RXhjZXB0aW9uQ29kZSYgZWMpCiB7Ci0gICAgR3VhcmRPcnBoYW5TaGFkb3dSb290KGVjID0gSU5W
QUxJRF9BQ0NFU1NfRVJSKTsKKyAgICBpZiAoaXNPcnBoYW4oKSkgeworICAgICAgICBlYyA9IElO
VkFMSURfQUNDRVNTX0VSUjsKKyAgICAgICAgcmV0dXJuOworICAgIH0KIAogICAgIGlmIChSZWZQ
dHI8RG9jdW1lbnRGcmFnbWVudD4gZnJhZ21lbnQgPSBjcmVhdGVGcmFnbWVudEZvcklubmVyT3V0
ZXJIVE1MKG1hcmt1cCwgaG9zdCgpLCBBbGxvd1NjcmlwdGluZ0NvbnRlbnQsIGVjKSkKICAgICAg
ICAgcmVwbGFjZUNoaWxkcmVuV2l0aEZyYWdtZW50KHRoaXMsIGZyYWdtZW50LnJlbGVhc2UoKSwg
ZWMpOwpAQCAtMTc0LDIxICsxNDYsMTAgQEAgdm9pZCBTaGFkb3dSb290OjpyZWNhbGNTdHlsZShT
dHlsZUNoYW5nZSBjaGFuZ2UpCiAgICAgY2xlYXJDaGlsZE5lZWRzU3R5bGVSZWNhbGMoKTsKIH0K
IAotRWxlbWVudFNoYWRvdyogU2hhZG93Um9vdDo6b3duZXIoKSBjb25zdAotewotICAgIGlmICho
b3N0KCkpCi0gICAgICAgIHJldHVybiBob3N0KCktPnNoYWRvdygpOwotICAgIHJldHVybiAwOwot
fQotCi1ib29sIFNoYWRvd1Jvb3Q6OmFwcGx5QXV0aG9yU3R5bGVzKCkgY29uc3QKLXsKLSAgICBy
ZXR1cm4gbV9hcHBseUF1dGhvclN0eWxlczsKLX0KLQogdm9pZCBTaGFkb3dSb290OjpzZXRBcHBs
eUF1dGhvclN0eWxlcyhib29sIHZhbHVlKQogewotICAgIEd1YXJkT3JwaGFuU2hhZG93Um9vdCh7
IH0pOworICAgIGlmIChpc09ycGhhbigpKQorICAgICAgICByZXR1cm47CiAKICAgICBpZiAobV9h
cHBseUF1dGhvclN0eWxlcyAhPSB2YWx1ZSkgewogICAgICAgICBtX2FwcGx5QXV0aG9yU3R5bGVz
ID0gdmFsdWU7CkBAIC0xOTYsMTQgKzE1NywxMCBAQCB2b2lkIFNoYWRvd1Jvb3Q6OnNldEFwcGx5
QXV0aG9yU3R5bGVzKGJvb2wgdmFsdWUpCiAgICAgfQogfQogCi1ib29sIFNoYWRvd1Jvb3Q6OnJl
c2V0U3R5bGVJbmhlcml0YW5jZSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1fcmVzZXRTdHlsZUlu
aGVyaXRhbmNlOwotfQotCiB2b2lkIFNoYWRvd1Jvb3Q6OnNldFJlc2V0U3R5bGVJbmhlcml0YW5j
ZShib29sIHZhbHVlKQogewotICAgIEd1YXJkT3JwaGFuU2hhZG93Um9vdCh7IH0pOworICAgIGlm
IChpc09ycGhhbigpKQorICAgICAgICByZXR1cm47CiAKICAgICBpZiAodmFsdWUgIT0gbV9yZXNl
dFN0eWxlSW5oZXJpdGFuY2UpIHsKICAgICAgICAgbV9yZXNldFN0eWxlSW5oZXJpdGFuY2UgPSB2
YWx1ZTsKQEAgLTI1OCw3ICsyMTUsOCBAQCB2b2lkIFNoYWRvd1Jvb3Q6OnJlbW92ZWRGcm9tKENv
bnRhaW5lck5vZGUqIGluc2VydGlvblBvaW50KQogCiB2b2lkIFNoYWRvd1Jvb3Q6OmNoaWxkcmVu
Q2hhbmdlZChib29sIGNoYW5nZWRCeVBhcnNlciwgTm9kZSogYmVmb3JlQ2hhbmdlLCBOb2RlKiBh
ZnRlckNoYW5nZSwgaW50IGNoaWxkQ291bnREZWx0YSkKIHsKLSAgICBHdWFyZE9ycGhhblNoYWRv
d1Jvb3QoeyB9KTsKKyAgICBpZiAoaXNPcnBoYW4oKSkKKyAgICAgICAgcmV0dXJuOwogCiAgICAg
Q29udGFpbmVyTm9kZTo6Y2hpbGRyZW5DaGFuZ2VkKGNoYW5nZWRCeVBhcnNlciwgYmVmb3JlQ2hh
bmdlLCBhZnRlckNoYW5nZSwgY2hpbGRDb3VudERlbHRhKTsKICAgICBvd25lcigpLT5pbnZhbGlk
YXRlRGlzdHJpYnV0aW9uKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2hhZG93
Um9vdC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL1NoYWRvd1Jvb3QuaAppbmRleCAwZjg1OTIyMjU4
Y2U3MjEwMDAxNWYwZTBlMDU0M2U1M2VlZjY2YTY5Li5iNjM5ZTY4ZTRmMTdjMGRhNGExMGIyNGQx
ZmY4NTdhY2M0NzU5M2FlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2hhZG93Um9v
dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TaGFkb3dSb290LmgKQEAgLTM3LDEwICszNyw3
IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgRG9jdW1lbnQ7Ci1jbGFzcyBET01T
ZWxlY3Rpb247CiBjbGFzcyBFbGVtZW50U2hhZG93OwotY2xhc3MgSW5zZXJ0aW9uUG9pbnQ7CiBj
bGFzcyBTY29wZUNvbnRlbnREaXN0cmlidXRpb247CiAKIGNsYXNzIFNoYWRvd1Jvb3QgOiBwdWJs
aWMgRG9jdW1lbnRGcmFnbWVudCwgcHVibGljIFRyZWVTY29wZSwgcHVibGljIERvdWJseUxpbmtl
ZExpc3ROb2RlPFNoYWRvd1Jvb3Q+IHsKQEAgLTYyLDE0ICs1OSwxMyBAQCBwdWJsaWM6CiAKICAg
ICB2b2lkIHJlY2FsY1N0eWxlKFN0eWxlQ2hhbmdlKTsKIAotICAgIHZpcnR1YWwgYm9vbCBhcHBs
eUF1dGhvclN0eWxlcygpIGNvbnN0IE9WRVJSSURFOworICAgIHZpcnR1YWwgYm9vbCBhcHBseUF1
dGhvclN0eWxlcygpIGNvbnN0IE9WRVJSSURFIHsgcmV0dXJuIG1fYXBwbHlBdXRob3JTdHlsZXM7
IH0KICAgICB2b2lkIHNldEFwcGx5QXV0aG9yU3R5bGVzKGJvb2wpOwotICAgIHZpcnR1YWwgYm9v
bCByZXNldFN0eWxlSW5oZXJpdGFuY2UoKSBjb25zdCBPVkVSUklERTsKKyAgICB2aXJ0dWFsIGJv
b2wgcmVzZXRTdHlsZUluaGVyaXRhbmNlKCkgY29uc3QgT1ZFUlJJREUgeyByZXR1cm4gbV9yZXNl
dFN0eWxlSW5oZXJpdGFuY2U7IH0KICAgICB2b2lkIHNldFJlc2V0U3R5bGVJbmhlcml0YW5jZShi
b29sKTsKIAotICAgIEVsZW1lbnQqIGhvc3QoKSBjb25zdDsKLSAgICB2b2lkIHNldEhvc3QoRWxl
bWVudCopOwotICAgIEVsZW1lbnRTaGFkb3cqIG93bmVyKCkgY29uc3Q7CisgICAgRWxlbWVudCog
aG9zdCgpIGNvbnN0IHsgcmV0dXJuIHRvRWxlbWVudChwYXJlbnRPckhvc3ROb2RlKCkpOyB9Cisg
ICAgRWxlbWVudFNoYWRvdyogb3duZXIoKSBjb25zdCB7IHJldHVybiBob3N0KCkgPyBob3N0KCkt
PnNoYWRvdygpIDogMDsgfQogCiAgICAgU3RyaW5nIGlubmVySFRNTCgpIGNvbnN0OwogICAgIHZv
aWQgc2V0SW5uZXJIVE1MKGNvbnN0IFN0cmluZyYsIEV4Y2VwdGlvbkNvZGUmKTsKQEAgLTEwMywx
MCArOTksMTYgQEAgcHVibGljOgogcHJpdmF0ZToKICAgICBTaGFkb3dSb290KERvY3VtZW50Kiwg
U2hhZG93Um9vdFR5cGUpOwogICAgIHZpcnR1YWwgflNoYWRvd1Jvb3QoKTsKLSAgICB2aXJ0dWFs
IFBhc3NSZWZQdHI8Tm9kZT4gY2xvbmVOb2RlKGJvb2wgZGVlcCk7Ci0gICAgdmlydHVhbCBib29s
IGNoaWxkVHlwZUFsbG93ZWQoTm9kZVR5cGUpIGNvbnN0OworCisgICAgdmlydHVhbCBib29sIGNo
aWxkVHlwZUFsbG93ZWQoTm9kZVR5cGUpIGNvbnN0IE9WRVJSSURFOwogICAgIHZpcnR1YWwgdm9p
ZCBjaGlsZHJlbkNoYW5nZWQoYm9vbCBjaGFuZ2VkQnlQYXJzZXIsIE5vZGUqIGJlZm9yZUNoYW5n
ZSwgTm9kZSogYWZ0ZXJDaGFuZ2UsIGludCBjaGlsZENvdW50RGVsdGEpIE9WRVJSSURFOwogCisg
ICAgLy8gU2hhZG93Um9vdHMgc2hvdWxkIG5ldmVyIGJlIGNsb25lZC4KKyAgICB2aXJ0dWFsIFBh
c3NSZWZQdHI8Tm9kZT4gY2xvbmVOb2RlKGJvb2wpIE9WRVJSSURFIHsgcmV0dXJuIDA7IH0KKwor
ICAgIC8vIEZJWE1FOiBUaGlzIHNob3VsZG4ndCBoYXBwZW4uIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD04ODgzNAorICAgIGJvb2wgaXNPcnBoYW4oKSBjb25zdCB7IHJl
dHVybiAhaG9zdCgpOyB9CisKICAgICBTaGFkb3dSb290KiBtX3ByZXY7CiAgICAgU2hhZG93Um9v
dCogbV9uZXh0OwogICAgIE93blB0cjxTY29wZUNvbnRlbnREaXN0cmlidXRpb24+IG1fc2NvcGVE
aXN0cmlidXRpb247CkBAIC0xMTcsMTggKzExOSw2IEBAIHByaXZhdGU6CiAgICAgdW5zaWduZWQg
bV9yZWdpc3RlcmVkV2l0aFBhcmVudFNoYWRvd1Jvb3QgOiAxOwogfTsKIAotaW5saW5lIEVsZW1l
bnQqIFNoYWRvd1Jvb3Q6Omhvc3QoKSBjb25zdAotewotICAgIHJldHVybiB0b0VsZW1lbnQocGFy
ZW50T3JIb3N0Tm9kZSgpKTsKLX0KLQotaW5saW5lIHZvaWQgU2hhZG93Um9vdDo6c2V0SG9zdChF
bGVtZW50KiBob3N0KQotewotICAgIHNldFBhcmVudE9ySG9zdE5vZGUoaG9zdCk7Ci0gICAgaWYg
KGhvc3QpCi0gICAgICAgIHNldFBhcmVudFRyZWVTY29wZShob3N0LT50cmVlU2NvcGUoKSk7Ci19
Ci0KIGlubGluZSBFbGVtZW50KiBTaGFkb3dSb290OjphY3RpdmVFbGVtZW50KCkgY29uc3QKIHsK
ICAgICBpZiAoTm9kZSogbm9kZSA9IHRyZWVTY29wZSgpLT5mb2N1c2VkTm9kZSgpKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>