<?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>80248</bug_id>
          
          <creation_ts>2012-03-05 00:31:10 -0800</creation_ts>
          <short_desc>Geolocation should use a ScriptExecutionContext as its context object</short_desc>
          <delta_ts>2012-03-23 17:25:53 -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>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>
          
          <blocked>79327</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Barth">abarth</reporter>
          <assigned_to name="Adam Barth">abarth</assigned_to>
          <cc>eric</cc>
    
    <cc>haraken</cc>
    
    <cc>ossy</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>570460</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-03-05 00:31:10 -0800</bug_when>
    <thetext>Geolocation should use a ScriptExecutionContext as its context object</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>570474</commentid>
    <comment_count>1</comment_count>
      <attachid>130068</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-03-05 00:47:50 -0800</bug_when>
    <thetext>Created attachment 130068
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>570532</commentid>
    <comment_count>2</comment_count>
      <attachid>130068</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-03-05 02:23:29 -0800</bug_when>
    <thetext>Comment on attachment 130068
Patch

Attachment 130068 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/11803899</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>570783</commentid>
    <comment_count>3</comment_count>
      <attachid>130155</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-03-05 09:41:11 -0800</bug_when>
    <thetext>Created attachment 130155
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>570819</commentid>
    <comment_count>4</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-03-05 10:18:03 -0800</bug_when>
    <thetext>Committed r109761: &lt;http://trac.webkit.org/changeset/109761&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571502</commentid>
    <comment_count>5</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-03-05 22:38:57 -0800</bug_when>
    <thetext>Reopen, because it broke the --minimal build:
/usr/bin/gold: /ramdisk/qt-linux-release-minimal/build/WebKitBuild/Release/Source/WebCore/release/libWebCore.a(NavigatorGeolocation.o): in function WebCore::NavigatorGeolocation::geolocation() const:NavigatorGeolocation.cpp(.text._ZNK7WebCore20NavigatorGeolocation11geolocationEv+0x57): error: undefined reference to &apos;WebCore::Geolocation::create(WebCore::ScriptExecutionContext*)&apos;
c</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571505</commentid>
    <comment_count>6</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-03-05 22:42:34 -0800</bug_when>
    <thetext>We should consider adding a --minimal EWS bot to prevent such breakages.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571536</commentid>
    <comment_count>7</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-03-05 23:25:35 -0800</bug_when>
    <thetext>Thanks.  Will fix in a moment when my working copy is free.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571558</commentid>
    <comment_count>8</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-03-05 23:54:50 -0800</bug_when>
    <thetext>Fix in https://bugs.webkit.org/show_bug.cgi?id=80390</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>586892</commentid>
    <comment_count>9</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-03-23 17:25:53 -0700</bug_when>
    <thetext>This is fixed.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>130068</attachid>
            <date>2012-03-05 00:47:50 -0800</date>
            <delta_ts>2012-03-05 09:41:05 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-80248-20120305004749.patch</filename>
            <type>text/plain</type>
            <size>14511</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwOTcxOSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQ3IEBACisyMDEyLTAzLTA1ICBBZGFtIEJh
cnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CisKKyAgICAgICAgR2VvbG9jYXRpb24gc2hvdWxkIHVz
ZSBhIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQgYXMgaXRzIGNvbnRleHQgb2JqZWN0CisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MDI0OAorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgcGF0Y2ggdXBkYXRl
cyBHZW9sb2NhdGlvbiB0byB1c2Ugc29tZSBtb3JlIG1vZGVybiBXZWJDb3JlCisgICAgICAgIG1l
Y2hhbmlzbXMuICBQcmV2aW91c2x5LCBHZW9sb2NhdGlvbiB1c2VkIGEgRnJhbWUgYXMgYSBjb250
ZXh0IG9iamVjdCwKKyAgICAgICAgd2hpY2ggcmVxdWlyZWQgYSBidW5jaCBvZiBtYW51YWwgaW50
ZWdyYXRpb24gd2l0aCB0aGUgUGFnZUNhY2hlIGFzIHdlbGwKKyAgICAgICAgYXMgY3VzdG9tIHNp
Z25hbGluZyBmb3IgR2VvbG9jYXRpb246OnJlc2V0KCkuICBBZnRlciB0aGlzIHBhdGNoLAorICAg
ICAgICBHZW9sb2NhdGlvbiBzdWJjbGFzc2VzIEFjdGl2ZURPTU9iamVjdCwgd2hpY2ggZG9lcyBh
bGwgdGhpcyB3b3JrCisgICAgICAgIGF1dG9tYXRpY2FsbHkuCisKKyAgICAgICAgKiBNb2R1bGVz
L2dlb2xvY2F0aW9uL0dlb2xvY2F0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0
aW9uOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3JlOjpHZW9s
b2NhdGlvbjo6R2VvbG9jYXRpb24pOgorICAgICAgICAoV2ViQ29yZTo6R2VvbG9jYXRpb246On5H
ZW9sb2NhdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpHZW9sb2NhdGlvbjo6ZG9jdW1lbnQpOgor
ICAgICAgICAoV2ViQ29yZTo6R2VvbG9jYXRpb246OmZyYW1lKToKKyAgICAgICAgKFdlYkNvcmU6
Okdlb2xvY2F0aW9uOjpwYWdlKToKKyAgICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0aW9uOjpzdG9w
KToKKyAgICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0aW9uOjpnZXRDdXJyZW50UG9zaXRpb24pOgor
ICAgICAgICAoV2ViQ29yZTo6R2VvbG9jYXRpb246OndhdGNoUG9zaXRpb24pOgorICAgICAgICAo
V2ViQ29yZTo6R2VvbG9jYXRpb246OnJlcXVlc3RQZXJtaXNzaW9uKToKKyAgICAgICAgKFdlYkNv
cmU6Okdlb2xvY2F0aW9uOjpjbGVhcldhdGNoKToKKyAgICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0
aW9uOjpzZXRJc0FsbG93ZWQpOgorICAgICAgICAqIE1vZHVsZXMvZ2VvbG9jYXRpb24vR2VvbG9j
YXRpb24uaDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoR2VvbG9jYXRpb24pOgorICAg
ICAgICAqIE1vZHVsZXMvZ2VvbG9jYXRpb24vTmF2aWdhdG9yR2VvbG9jYXRpb24uY3BwOgorICAg
ICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3JlOjpOYXZpZ2F0b3JHZW9sb2NhdGlvbjo6
Z2VvbG9jYXRpb24pOgorICAgICAgICAqIE1vZHVsZXMvZ2VvbG9jYXRpb24vTmF2aWdhdG9yR2Vv
bG9jYXRpb24uaDoKKyAgICAgICAgKE5hdmlnYXRvckdlb2xvY2F0aW9uKToKKyAgICAgICAgKiBk
b20vRG9jdW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OkRvY3VtZW50KToK
KyAgICAgICAgKiBkb20vRG9jdW1lbnQuaDoKKyAgICAgICAgKERvY3VtZW50KToKKyAgICAgICAg
KiBoaXN0b3J5L1BhZ2VDYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpsb2dDYW5DYWNoZUZy
YW1lRGVjaXNpb24pOgorICAgICAgICAoV2ViQ29yZTo6UGFnZUNhY2hlOjpjYW5DYWNoZVBhZ2VD
b250YWluaW5nVGhpc0ZyYW1lKToKKwogMjAxMi0wMy0wNSAgU2hpbnlhIEthd2FuYWthICA8c2hp
bnlha0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmVmYWN0b3Jpbmc6IE1vdmUgSFRNTENvbnRl
bnRFbGVtZW50OjphdHRhY2ggdG8gSW5zZXJ0aW9uUG9pbnQ6OmF0dGFjaC4KSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vR2VvbG9jYXRpb24uY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vR2VvbG9jYXRpb24uY3BwCShy
ZXZpc2lvbiAxMDk3MDQpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2dlb2xvY2F0aW9uL0dl
b2xvY2F0aW9uLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjI1LDM4ICsyMjUsNTcgQEAgdm9pZCBH
ZW9sb2NhdGlvbjo6V2F0Y2hlcnM6OmdldE5vdGlmaWVycwogICAgIGNvcHlWYWx1ZXNUb1ZlY3Rv
cihtX2lkVG9Ob3RpZmllck1hcCwgY29weSk7CiB9CiAKLUdlb2xvY2F0aW9uOjpHZW9sb2NhdGlv
bihGcmFtZSogZnJhbWUpCi0gICAgOiBET01XaW5kb3dQcm9wZXJ0eShmcmFtZSkKK1Bhc3NSZWZQ
dHI8R2VvbG9jYXRpb24+IEdlb2xvY2F0aW9uOjpjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCogY29udGV4dCkKK3sKKyAgICBSZWZQdHI8R2VvbG9jYXRpb24+IGdlb2xvY2F0aW9uID0gYWRv
cHRSZWYobmV3IEdlb2xvY2F0aW9uKGNvbnRleHQpKTsKKyAgICBnZW9sb2NhdGlvbi0+c3VzcGVu
ZElmTmVlZGVkKCk7CisgICAgcmV0dXJuIGdlb2xvY2F0aW9uLnJlbGVhc2UoKTsKK30KKworR2Vv
bG9jYXRpb246Okdlb2xvY2F0aW9uKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQpCisg
ICAgOiBBY3RpdmVET01PYmplY3QoY29udGV4dCwgdGhpcykKICNpZiAhRU5BQkxFKENMSUVOVF9C
QVNFRF9HRU9MT0NBVElPTikKICAgICAsIG1fc2VydmljZShHZW9sb2NhdGlvblNlcnZpY2U6OmNy
ZWF0ZSh0aGlzKSkKICNlbmRpZgogICAgICwgbV9hbGxvd0dlb2xvY2F0aW9uKFVua25vd24pCiB7
Ci0gICAgaWYgKCFtX2ZyYW1lKQotICAgICAgICByZXR1cm47Ci0gICAgQVNTRVJUKG1fZnJhbWUt
PmRvY3VtZW50KCkpOwotICAgIG1fZnJhbWUtPmRvY3VtZW50KCktPnNldFVzaW5nR2VvbG9jYXRp
b24odHJ1ZSk7CiB9CiAKIEdlb2xvY2F0aW9uOjp+R2VvbG9jYXRpb24oKQogewogICAgIEFTU0VS
VChtX2FsbG93R2VvbG9jYXRpb24gIT0gSW5Qcm9ncmVzcyk7Ci0gICAgQVNTRVJUKCFtX2ZyYW1l
KTsKK30KKworRG9jdW1lbnQqIEdlb2xvY2F0aW9uOjpkb2N1bWVudCgpIGNvbnN0Cit7CisgICAg
QVNTRVJUKCFzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkgfHwgc2NyaXB0RXhlY3V0aW9uQ29udGV4
dCgpLT5pc0RvY3VtZW50KCkpOworICAgIHJldHVybiBzdGF0aWNfY2FzdDxEb2N1bWVudCo+KHNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQoKSk7Cit9CisKK0ZyYW1lKiBHZW9sb2NhdGlvbjo6ZnJhbWUo
KSBjb25zdAoreworICAgIHJldHVybiBkb2N1bWVudCgpID8gZG9jdW1lbnQoKS0+ZnJhbWUoKSA6
IDA7CiB9CiAKIFBhZ2UqIEdlb2xvY2F0aW9uOjpwYWdlKCkgY29uc3QKIHsKLSAgICByZXR1cm4g
bV9mcmFtZSA/IG1fZnJhbWUtPnBhZ2UoKSA6IDA7CisgICAgcmV0dXJuIGRvY3VtZW50KCkgPyBk
b2N1bWVudCgpLT5wYWdlKCkgOiAwOwogfQogCi12b2lkIEdlb2xvY2F0aW9uOjpyZXNldCgpCit2
b2lkIEdlb2xvY2F0aW9uOjpzdG9wKCkKIHsKKyAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIGlkZWFs
bHkgYWxsb3cgZXhpc3RpbmcgR2VvbG9jYXRpb24gYWN0aXZpdGllcyB0byBjb250aW51ZQorICAg
IC8vIHdoZW4gdGhlIEdlb2xvY2F0aW9uJ3MgaWZyYW1lIGlzIHJlcGFyZW50ZWQuIChBc3N1bWlu
ZyB3ZSBjb250aW51ZSB0bworICAgIC8vIHN1cHBvcnQgcmVwYXJlbnRpbmcgaWZyYW1lcy4pCisg
ICAgLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01NTU3Nwor
ICAgIC8vIGFuZCBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTI4NzcK
KwogICAgIFBhZ2UqIHBhZ2UgPSB0aGlzLT5wYWdlKCk7CiAgICAgaWYgKHBhZ2UgJiYgbV9hbGxv
d0dlb2xvY2F0aW9uID09IEluUHJvZ3Jlc3MpIHsKICNpZiBFTkFCTEUoQ0xJRU5UX0JBU0VEX0dF
T0xPQ0FUSU9OKQogICAgICAgICBwYWdlLT5nZW9sb2NhdGlvbkNvbnRyb2xsZXIoKS0+Y2FuY2Vs
UGVybWlzc2lvblJlcXVlc3QodGhpcyk7CiAjZWxzZQotICAgICAgICBwYWdlLT5jaHJvbWUoKS0+
Y2xpZW50KCktPmNhbmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RGb3JGcmFtZShtX2Zy
YW1lLCB0aGlzKTsKKyAgICAgICAgcGFnZS0+Y2hyb21lKCktPmNsaWVudCgpLT5jYW5jZWxHZW9s
b2NhdGlvblBlcm1pc3Npb25SZXF1ZXN0Rm9yRnJhbWUoZnJhbWUoKSwgdGhpcyk7CiAjZW5kaWYK
ICAgICB9CiAgICAgLy8gVGhlIGZyYW1lIG1heSBiZSBtb3ZpbmcgdG8gYSBuZXcgcGFnZSBhbmQg
d2Ugd2FudCB0byBnZXQgdGhlIHBlcm1pc3Npb25zIGZyb20gdGhlIG5ldyBwYWdlJ3MgY2xpZW50
LgpAQCAtMjY4LDE1ICsyODcsNiBAQCB2b2lkIEdlb2xvY2F0aW9uOjpyZXNldCgpCiAjZW5kaWYK
IH0KIAotdm9pZCBHZW9sb2NhdGlvbjo6ZGlzY29ubmVjdEZyYW1lKCkKLXsKLSAgICAvLyBPbmNl
IHdlIGFyZSBkaXNjb25uZWN0ZWQgZnJvbSB0aGUgRnJhbWUsIGl0IGlzIG5vIGxvbmdlciBwb3Nz
aWJsZSB0byBwZXJmb3JtIGFueSBvcGVyYXRpb25zLgotICAgIHJlc2V0KCk7Ci0gICAgaWYgKG1f
ZnJhbWUgJiYgbV9mcmFtZS0+ZG9jdW1lbnQoKSkKLSAgICAgICAgbV9mcmFtZS0+ZG9jdW1lbnQo
KS0+c2V0VXNpbmdHZW9sb2NhdGlvbihmYWxzZSk7Ci0gICAgRE9NV2luZG93UHJvcGVydHk6OmRp
c2Nvbm5lY3RGcmFtZSgpOwotfQotCiBHZW9wb3NpdGlvbiogR2VvbG9jYXRpb246Omxhc3RQb3Np
dGlvbigpCiB7CiAjaWYgRU5BQkxFKENMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikKQEAgLTI5NCw3
ICszMDQsNyBAQCBHZW9wb3NpdGlvbiogR2VvbG9jYXRpb246Omxhc3RQb3NpdGlvbigpCiAKIHZv
aWQgR2VvbG9jYXRpb246OmdldEN1cnJlbnRQb3NpdGlvbihQYXNzUmVmUHRyPFBvc2l0aW9uQ2Fs
bGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxQb3NpdGlvbkVycm9yQ2FsbGJhY2s+
IGVycm9yQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UG9zaXRpb25PcHRpb25zPiBvcHRpb25zKQogewot
ICAgIGlmICghbV9mcmFtZSkKKyAgICBpZiAoIWZyYW1lKCkpCiAgICAgICAgIHJldHVybjsKIAog
ICAgIFJlZlB0cjxHZW9Ob3RpZmllcj4gbm90aWZpZXIgPSBzdGFydFJlcXVlc3Qoc3VjY2Vzc0Nh
bGxiYWNrLCBlcnJvckNhbGxiYWNrLCBvcHRpb25zKTsKQEAgLTMwNSw3ICszMTUsNyBAQCB2b2lk
IEdlb2xvY2F0aW9uOjpnZXRDdXJyZW50UG9zaXRpb24oUGFzCiAKIGludCBHZW9sb2NhdGlvbjo6
d2F0Y2hQb3NpdGlvbihQYXNzUmVmUHRyPFBvc2l0aW9uQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFj
aywgUGFzc1JlZlB0cjxQb3NpdGlvbkVycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIFBhc3NS
ZWZQdHI8UG9zaXRpb25PcHRpb25zPiBvcHRpb25zKQogewotICAgIGlmICghbV9mcmFtZSkKKyAg
ICBpZiAoIWZyYW1lKCkpCiAgICAgICAgIHJldHVybiAwOwogCiAgICAgUmVmUHRyPEdlb05vdGlm
aWVyPiBub3RpZmllciA9IHN0YXJ0UmVxdWVzdChzdWNjZXNzQ2FsbGJhY2ssIGVycm9yQ2FsbGJh
Y2ssIG9wdGlvbnMpOwpAQCAtNjIwLDcgKzYzMCw3IEBAIHZvaWQgR2VvbG9jYXRpb246OnJlcXVl
c3RQZXJtaXNzaW9uKCkKICNpZiBFTkFCTEUoQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKQogICAg
IHBhZ2UtPmdlb2xvY2F0aW9uQ29udHJvbGxlcigpLT5yZXF1ZXN0UGVybWlzc2lvbih0aGlzKTsK
ICNlbHNlCi0gICAgcGFnZS0+Y2hyb21lKCktPmNsaWVudCgpLT5yZXF1ZXN0R2VvbG9jYXRpb25Q
ZXJtaXNzaW9uRm9yRnJhbWUobV9mcmFtZSwgdGhpcyk7CisgICAgcGFnZS0+Y2hyb21lKCktPmNs
aWVudCgpLT5yZXF1ZXN0R2VvbG9jYXRpb25QZXJtaXNzaW9uRm9yRnJhbWUoZnJhbWUoKSwgdGhp
cyk7CiAjZW5kaWYKIH0KIApAQCAtNzU3LDE3ICs3NjcsMTEgQEAgdm9pZCBHZW9sb2NhdGlvbjo6
aGFuZGxlUGVuZGluZ1Blcm1pc3NpbwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLXZvaWQgR2Vv
bG9jYXRpb246OmNsZWFyV2F0Y2goaW50KSB7fQotCi12b2lkIEdlb2xvY2F0aW9uOjpyZXNldCgp
IHt9Ci0KLXZvaWQgR2VvbG9jYXRpb246OmRpc2Nvbm5lY3RGcmFtZSgpIHt9Ci0KLUdlb2xvY2F0
aW9uOjpHZW9sb2NhdGlvbihGcmFtZSopIDogRE9NV2luZG93UHJvcGVydHkoMCkge30KLQotR2Vv
bG9jYXRpb246On5HZW9sb2NhdGlvbigpIHt9Ci0KLXZvaWQgR2VvbG9jYXRpb246OnNldElzQWxs
b3dlZChib29sKSB7fQordm9pZCBHZW9sb2NhdGlvbjo6Y2xlYXJXYXRjaChpbnQpIHsgfQordm9p
ZCBHZW9sb2NhdGlvbjo6c3RvcCgpIHsgfQorR2VvbG9jYXRpb246Okdlb2xvY2F0aW9uKFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQpIDogQWN0aXZlRE9NT2JqZWN0KGNvbnRleHQsIHRo
aXMpIHsgfQorR2VvbG9jYXRpb246On5HZW9sb2NhdGlvbigpIHsgfQordm9pZCBHZW9sb2NhdGlv
bjo6c2V0SXNBbGxvd2VkKGJvb2wpIHsgfQogCiB9CiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApJbmRleDogU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9nZW9sb2NhdGlvbi9HZW9sb2NhdGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vR2VvbG9jYXRpb24uaAkocmV2aXNpb24gMTA5NzA0KQor
KysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9nZW9sb2NhdGlvbi9HZW9sb2NhdGlvbi5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNyw3ICsyNyw3IEBACiAjaWZuZGVmIEdlb2xvY2F0aW9uX2gKICNkZWZp
bmUgR2VvbG9jYXRpb25faAogCi0jaW5jbHVkZSAiRE9NV2luZG93UHJvcGVydHkuaCIKKyNpbmNs
dWRlICJBY3RpdmVET01PYmplY3QuaCIKICNpbmNsdWRlICJHZW9wb3NpdGlvbi5oIgogI2luY2x1
ZGUgIlBvc2l0aW9uQ2FsbGJhY2suaCIKICNpbmNsdWRlICJQb3NpdGlvbkVycm9yLmgiCkBAIC00
MSwyNCArNDEsMjcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitjbGFzcyBEb2N1bWVudDsK
IGNsYXNzIEZyYW1lOwogI2lmIEVOQUJMRShDTElFTlRfQkFTRURfR0VPTE9DQVRJT04pCiBjbGFz
cyBHZW9sb2NhdGlvblBvc2l0aW9uOwogY2xhc3MgR2VvbG9jYXRpb25FcnJvcjsKICNlbmRpZgog
Y2xhc3MgUGFnZTsKK2NsYXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7CiAKLWNsYXNzIEdlb2xv
Y2F0aW9uIDogcHVibGljIFJlZkNvdW50ZWQ8R2VvbG9jYXRpb24+LCBwdWJsaWMgRE9NV2luZG93
UHJvcGVydHkKK2NsYXNzIEdlb2xvY2F0aW9uIDogcHVibGljIFJlZkNvdW50ZWQ8R2VvbG9jYXRp
b24+LCBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0CiAjaWYgIUVOQUJMRShDTElFTlRfQkFTRURfR0VP
TE9DQVRJT04pICYmIEVOQUJMRShHRU9MT0NBVElPTikKICAgICAsIHB1YmxpYyBHZW9sb2NhdGlv
blNlcnZpY2VDbGllbnQKICNlbmRpZgogewogcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRy
PEdlb2xvY2F0aW9uPiBjcmVhdGUoRnJhbWUqIGZyYW1lKSB7IHJldHVybiBhZG9wdFJlZihuZXcg
R2VvbG9jYXRpb24oZnJhbWUpKTsgfQorICAgIHN0YXRpYyBQYXNzUmVmUHRyPEdlb2xvY2F0aW9u
PiBjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCopOwogICAgIH5HZW9sb2NhdGlvbigpOwog
Ci0gICAgdmlydHVhbCB2b2lkIGRpc2Nvbm5lY3RGcmFtZSgpIE9WRVJSSURFOwotICAgIHZvaWQg
cmVzZXQoKTsKKyAgICB2aXJ0dWFsIHZvaWQgc3RvcCgpIE9WRVJSSURFOworICAgIERvY3VtZW50
KiBkb2N1bWVudCgpIGNvbnN0OworICAgIEZyYW1lKiBmcmFtZSgpIGNvbnN0OwogCiAgICAgdm9p
ZCBnZXRDdXJyZW50UG9zaXRpb24oUGFzc1JlZlB0cjxQb3NpdGlvbkNhbGxiYWNrPiwgUGFzc1Jl
ZlB0cjxQb3NpdGlvbkVycm9yQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPFBvc2l0aW9uT3B0aW9ucz4p
OwogICAgIGludCB3YXRjaFBvc2l0aW9uKFBhc3NSZWZQdHI8UG9zaXRpb25DYWxsYmFjaz4sIFBh
c3NSZWZQdHI8UG9zaXRpb25FcnJvckNhbGxiYWNrPiwgUGFzc1JlZlB0cjxQb3NpdGlvbk9wdGlv
bnM+KTsKQEAgLTc5LDcgKzgyLDcgQEAgcHJpdmF0ZToKICAgICBib29sIGlzQWxsb3dlZCgpIGNv
bnN0IHsgcmV0dXJuIG1fYWxsb3dHZW9sb2NhdGlvbiA9PSBZZXM7IH0KICAgICBib29sIGlzRGVu
aWVkKCkgY29uc3QgeyByZXR1cm4gbV9hbGxvd0dlb2xvY2F0aW9uID09IE5vOyB9CiAKLSAgICBl
eHBsaWNpdCBHZW9sb2NhdGlvbihGcmFtZSopOworICAgIGV4cGxpY2l0IEdlb2xvY2F0aW9uKFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQqKTsKIAogICAgIFBhZ2UqIHBhZ2UoKSBjb25zdDsKIApJbmRl
eDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9nZW9sb2NhdGlvbi9OYXZpZ2F0b3JHZW9sb2NhdGlv
bi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9nZW9sb2NhdGlvbi9O
YXZpZ2F0b3JHZW9sb2NhdGlvbi5jcHAJKHJldmlzaW9uIDEwOTcwNCkKKysrIFNvdXJjZS9XZWJD
b3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vTmF2aWdhdG9yR2VvbG9jYXRpb24uY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0yMyw2ICsyMyw4IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAi
TmF2aWdhdG9yR2VvbG9jYXRpb24uaCIKIAorI2luY2x1ZGUgIkRvY3VtZW50LmgiCisjaW5jbHVk
ZSAiRnJhbWUuaCIKICNpbmNsdWRlICJHZW9sb2NhdGlvbi5oIgogI2luY2x1ZGUgIk5hdmlnYXRv
ci5oIgogCkBAIC0zNywxNyArMzksNiBAQCBOYXZpZ2F0b3JHZW9sb2NhdGlvbjo6fk5hdmlnYXRv
ckdlb2xvY2F0CiB7CiB9CiAKLXZvaWQgTmF2aWdhdG9yR2VvbG9jYXRpb246OndpbGxEZXRhY2hQ
YWdlKCkKLXsKLSAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIGlkZWFsbHkgYWxsb3cgZXhpc3Rpbmcg
R2VvbG9jYXRpb24gYWN0aXZpdGllcyB0byBjb250aW51ZQotICAgIC8vIHdoZW4gdGhlIEdlb2xv
Y2F0aW9uJ3MgaWZyYW1lIGlzIHJlcGFyZW50ZWQuIChBc3N1bWluZyB3ZSBjb250aW51ZSB0bwot
ICAgIC8vIHN1cHBvcnQgcmVwYXJlbnRpbmcgaWZyYW1lcy4pCi0gICAgLy8gU2VlIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01NTU3NwotICAgIC8vIGFuZCBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTI4NzcKLSAgICBpZiAobV9nZW9sb2Nh
dGlvbikKLSAgICAgICAgbV9nZW9sb2NhdGlvbi0+cmVzZXQoKTsKLX0KLQogTmF2aWdhdG9yR2Vv
bG9jYXRpb24qIE5hdmlnYXRvckdlb2xvY2F0aW9uOjpmcm9tKE5hdmlnYXRvciogbmF2aWdhdG9y
KQogewogICAgIERFRklORV9TVEFUSUNfTE9DQUwoQXRvbWljU3RyaW5nLCBuYW1lLCAoIk5hdmln
YXRvckdlb2xvY2F0aW9uIikpOwpAQCAtNjYsOCArNTcsOCBAQCBHZW9sb2NhdGlvbiogTmF2aWdh
dG9yR2VvbG9jYXRpb246Omdlb2xvCiAKIEdlb2xvY2F0aW9uKiBOYXZpZ2F0b3JHZW9sb2NhdGlv
bjo6Z2VvbG9jYXRpb24oKSBjb25zdAogewotICAgIGlmICghbV9nZW9sb2NhdGlvbikKLSAgICAg
ICAgbV9nZW9sb2NhdGlvbiA9IEdlb2xvY2F0aW9uOjpjcmVhdGUoZnJhbWUoKSk7CisgICAgaWYg
KCFtX2dlb2xvY2F0aW9uICYmIGZyYW1lKCkpCisgICAgICAgIG1fZ2VvbG9jYXRpb24gPSBHZW9s
b2NhdGlvbjo6Y3JlYXRlKGZyYW1lKCktPmRvY3VtZW50KCkpOwogICAgIHJldHVybiBtX2dlb2xv
Y2F0aW9uLmdldCgpOwogfQogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2dlb2xvY2F0
aW9uL05hdmlnYXRvckdlb2xvY2F0aW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9nZW9sb2NhdGlvbi9OYXZpZ2F0b3JHZW9sb2NhdGlvbi5oCShyZXZpc2lvbiAxMDk3
MDQpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2dlb2xvY2F0aW9uL05hdmlnYXRvckdlb2xv
Y2F0aW9uLmgJKHdvcmtpbmcgY29weSkKQEAgLTQwLDggKzQwLDYgQEAgcHVibGljOgogcHJpdmF0
ZToKICAgICBOYXZpZ2F0b3JHZW9sb2NhdGlvbihGcmFtZSopOwogCi0gICAgdmlydHVhbCB2b2lk
IHdpbGxEZXRhY2hQYWdlKCkgT1ZFUlJJREU7Ci0KICAgICBtdXRhYmxlIFJlZlB0cjxHZW9sb2Nh
dGlvbj4gbV9nZW9sb2NhdGlvbjsKIH07CiAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1
bWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAko
cmV2aXNpb24gMTA5NzA0KQorKysgU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAkod29y
a2luZyBjb3B5KQpAQCAtNDE5LDcgKzQxOSw2IEBAIERvY3VtZW50OjpEb2N1bWVudChGcmFtZSog
ZnJhbWUsIGNvbnN0IEsKICAgICAsIG1faXNIVE1MKGlzSFRNTCkKICAgICAsIG1faXNWaWV3U291
cmNlKGZhbHNlKQogICAgICwgbV9zYXdFbGVtZW50c0luS25vd25OYW1lc3BhY2VzKGZhbHNlKQot
ICAgICwgbV91c2luZ0dlb2xvY2F0aW9uKGZhbHNlKQogICAgICwgbV9ldmVudFF1ZXVlKERvY3Vt
ZW50RXZlbnRRdWV1ZTo6Y3JlYXRlKHRoaXMpKQogICAgICwgbV93ZWFrUmVmZXJlbmNlKERvY3Vt
ZW50V2Vha1JlZmVyZW5jZTo6Y3JlYXRlKHRoaXMpKQogICAgICwgbV9pZEF0dHJpYnV0ZU5hbWUo
aWRBdHRyKQpJbmRleDogU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgJKHJldmlzaW9uIDEwOTcwNCkKKysrIFNv
dXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMDM2LDkgKzEw
MzYsNiBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBib29sIGlzQ29udGV4dFRocmVhZCgpIGNvbnN0
OwogICAgIHZpcnR1YWwgYm9vbCBpc0pTRXhlY3V0aW9uRm9yYmlkZGVuKCkgY29uc3QgeyByZXR1
cm4gZmFsc2U7IH0KIAotICAgIHZvaWQgc2V0VXNpbmdHZW9sb2NhdGlvbihib29sIGYpIHsgbV91
c2luZ0dlb2xvY2F0aW9uID0gZjsgfQotICAgIGJvb2wgdXNpbmdHZW9sb2NhdGlvbigpIGNvbnN0
IHsgcmV0dXJuIG1fdXNpbmdHZW9sb2NhdGlvbjsgfTsKLQogICAgIGJvb2wgY29udGFpbnNWYWxp
ZGl0eVN0eWxlUnVsZXMoKSBjb25zdCB7IHJldHVybiBtX2NvbnRhaW5zVmFsaWRpdHlTdHlsZVJ1
bGVzOyB9CiAgICAgdm9pZCBzZXRDb250YWluc1ZhbGlkaXR5U3R5bGVSdWxlcygpIHsgbV9jb250
YWluc1ZhbGlkaXR5U3R5bGVSdWxlcyA9IHRydWU7IH0KIApAQCAtMTQxOSw4ICsxNDE2LDYgQEAg
cHJpdmF0ZToKICAgICBib29sIG1faXNWaWV3U291cmNlOwogICAgIGJvb2wgbV9zYXdFbGVtZW50
c0luS25vd25OYW1lc3BhY2VzOwogCi0gICAgYm9vbCBtX3VzaW5nR2VvbG9jYXRpb247Ci0KICAg
ICBSZWZQdHI8RG9jdW1lbnRFdmVudFF1ZXVlPiBtX2V2ZW50UXVldWU7CiAKICAgICBSZWZQdHI8
RG9jdW1lbnRXZWFrUmVmZXJlbmNlPiBtX3dlYWtSZWZlcmVuY2U7CkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9oaXN0b3J5L1BhZ2VDYWNoZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
aGlzdG9yeS9QYWdlQ2FjaGUuY3BwCShyZXZpc2lvbiAxMDk3MDQpCisrKyBTb3VyY2UvV2ViQ29y
ZS9oaXN0b3J5L1BhZ2VDYWNoZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTExNiwxMCArMTE2LDYg
QEAgc3RhdGljIGJvb2wgbG9nQ2FuQ2FjaGVGcmFtZURlY2lzaW9uKEZyYQogICAgICAgICAgICAg
Y2Fubm90Q2FjaGUgPSB0cnVlOwogICAgICAgICB9CiAjZW5kaWYKLSAgICAgICAgaWYgKGZyYW1l
LT5kb2N1bWVudCgpLT51c2luZ0dlb2xvY2F0aW9uKCkpIHsKLSAgICAgICAgICAgIFBDTE9HKCIg
ICAtRnJhbWUgdXNlcyBHZW9sb2NhdGlvbiIpOwotICAgICAgICAgICAgY2Fubm90Q2FjaGUgPSB0
cnVlOwotICAgICAgICB9CiAgICAgICAgIGlmICghZnJhbWUtPmxvYWRlcigpLT5oaXN0b3J5KCkt
PmN1cnJlbnRJdGVtKCkpIHsKICAgICAgICAgICAgIFBDTE9HKCIgICAtTm8gY3VycmVudCBoaXN0
b3J5IGl0ZW0iKTsKICAgICAgICAgICAgIGNhbm5vdENhY2hlID0gdHJ1ZTsKQEAgLTI1Myw3ICsy
NDksNiBAQCBib29sIFBhZ2VDYWNoZTo6Y2FuQ2FjaGVQYWdlQ29udGFpbmluZ1RoCiAjaWYgRU5B
QkxFKFNIQVJFRF9XT1JLRVJTKQogICAgICAgICAmJiAhU2hhcmVkV29ya2VyUmVwb3NpdG9yeTo6
aGFzU2hhcmVkV29ya2Vycyhkb2N1bWVudCkKICNlbmRpZgotICAgICAgICAmJiAhZG9jdW1lbnQt
PnVzaW5nR2VvbG9jYXRpb24oKQogICAgICAgICAmJiBmcmFtZUxvYWRlci0+aGlzdG9yeSgpLT5j
dXJyZW50SXRlbSgpCiAgICAgICAgICYmICFmcmFtZUxvYWRlci0+cXVpY2tSZWRpcmVjdENvbWlu
ZygpCiAgICAgICAgICYmICFkb2N1bWVudExvYWRlci0+aXNMb2FkaW5nSW5BUElTZW5zZSgpCklu
ZGV4OiBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwkocmV2aXNpb24gMTA5NzE5KQorKysgU291cmNl
L1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNiBA
QAorMjAxMi0wMy0wNSAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgorCisgICAgICAg
IEdlb2xvY2F0aW9uIHNob3VsZCB1c2UgYSBTY3JpcHRFeGVjdXRpb25Db250ZXh0IGFzIGl0cyBj
b250ZXh0IG9iamVjdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9ODAyNDgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBSYXRoZXIgdGhhbiBpbmRpcmVjdGluZyB0aHJvdWdoIHRoZSBGcmFtZSB0byBnZXQgdGhl
IFNlY3VyaXR5T3JpZ2luLCB3ZQorICAgICAgICBzaG91bGQgZ2V0IHRoZSBTZWN1cml0eU9yaWdp
biBkaXJlY3RseSBmcm9tIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQuCisKKyAgICAgICAgKiBzcmMv
V2ViR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdC5jcHA6CisgICAgICAgIChXZWJLaXQ6Oldl
Ykdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3Q6OnNlY3VyaXR5T3JpZ2luKToKKwogMjAxMi0w
My0wMyAgQmVuamFtaW4gUG91bGFpbiAgPGJlbmphbWluQHdlYmtpdC5vcmc+CiAKICAgICAgICAg
UmVtb3ZlIHRoZSByZWR1bmRhbnQgbWV0aG9kIEtVUkw6OnByb3RvY29sSW5IVFRQRmFtaWx5KCkK
SW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkdlb2xvY2F0aW9uUGVybWlzc2lv
blJlcXVlc3QuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dl
Ykdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3QuY3BwCShyZXZpc2lvbiAxMDk3MDQpCisrKyBT
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJHZW9sb2NhdGlvblBlcm1pc3Npb25SZXF1ZXN0
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzksNyArMzksNyBAQCBuYW1lc3BhY2UgV2ViS2l0IHsK
IAogV2ViU2VjdXJpdHlPcmlnaW4gV2ViR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdDo6c2Vj
dXJpdHlPcmlnaW4oKSBjb25zdAogewotICAgIHJldHVybiBXZWJTZWN1cml0eU9yaWdpbihtX3By
aXZhdGUtPmZyYW1lKCktPmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCkpOworICAgIHJldHVy
biBXZWJTZWN1cml0eU9yaWdpbihtX3ByaXZhdGUtPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKS0+
c2VjdXJpdHlPcmlnaW4oKSk7CiB9CiAKIHZvaWQgV2ViR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVx
dWVzdDo6c2V0SXNBbGxvd2VkKGJvb2wgYWxsb3dlZCkK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>130155</attachid>
            <date>2012-03-05 09:41:11 -0800</date>
            <delta_ts>2012-03-05 10:08:41 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-80248-20120305094110.patch</filename>
            <type>text/plain</type>
            <size>15290</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwOTcxOSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQ3IEBACisyMDEyLTAzLTA1ICBBZGFtIEJh
cnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CisKKyAgICAgICAgR2VvbG9jYXRpb24gc2hvdWxkIHVz
ZSBhIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQgYXMgaXRzIGNvbnRleHQgb2JqZWN0CisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MDI0OAorCisgICAgICAg
IFJldmlld2VkIGJ5IEtlbnRhcm8gSGFyYS4KKworICAgICAgICBUaGlzIHBhdGNoIHVwZGF0ZXMg
R2VvbG9jYXRpb24gdG8gdXNlIHNvbWUgbW9yZSBtb2Rlcm4gV2ViQ29yZQorICAgICAgICBtZWNo
YW5pc21zLiAgUHJldmlvdXNseSwgR2VvbG9jYXRpb24gdXNlZCBhIEZyYW1lIGFzIGEgY29udGV4
dCBvYmplY3QsCisgICAgICAgIHdoaWNoIHJlcXVpcmVkIGEgYnVuY2ggb2YgbWFudWFsIGludGVn
cmF0aW9uIHdpdGggdGhlIFBhZ2VDYWNoZSBhcyB3ZWxsCisgICAgICAgIGFzIGN1c3RvbSBzaWdu
YWxpbmcgZm9yIEdlb2xvY2F0aW9uOjpyZXNldCgpLiAgQWZ0ZXIgdGhpcyBwYXRjaCwKKyAgICAg
ICAgR2VvbG9jYXRpb24gc3ViY2xhc3NlcyBBY3RpdmVET01PYmplY3QsIHdoaWNoIGRvZXMgYWxs
IHRoaXMgd29yaworICAgICAgICBhdXRvbWF0aWNhbGx5LgorCisgICAgICAgICogTW9kdWxlcy9n
ZW9sb2NhdGlvbi9HZW9sb2NhdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHZW9sb2NhdGlv
bjo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6R2VvbG9j
YXRpb246Okdlb2xvY2F0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0aW9uOjp+R2Vv
bG9jYXRpb24pOgorICAgICAgICAoV2ViQ29yZTo6R2VvbG9jYXRpb246OmRvY3VtZW50KToKKyAg
ICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0aW9uOjpmcmFtZSk6CisgICAgICAgIChXZWJDb3JlOjpH
ZW9sb2NhdGlvbjo6cGFnZSk6CisgICAgICAgIChXZWJDb3JlOjpHZW9sb2NhdGlvbjo6c3RvcCk6
CisgICAgICAgIChXZWJDb3JlOjpHZW9sb2NhdGlvbjo6Z2V0Q3VycmVudFBvc2l0aW9uKToKKyAg
ICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0aW9uOjp3YXRjaFBvc2l0aW9uKToKKyAgICAgICAgKFdl
YkNvcmU6Okdlb2xvY2F0aW9uOjpyZXF1ZXN0UGVybWlzc2lvbik6CisgICAgICAgIChXZWJDb3Jl
OjpHZW9sb2NhdGlvbjo6Y2xlYXJXYXRjaCk6CisgICAgICAgIChXZWJDb3JlOjpHZW9sb2NhdGlv
bjo6c2V0SXNBbGxvd2VkKToKKyAgICAgICAgKiBNb2R1bGVzL2dlb2xvY2F0aW9uL0dlb2xvY2F0
aW9uLmg6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKEdlb2xvY2F0aW9uKToKKyAgICAg
ICAgKiBNb2R1bGVzL2dlb2xvY2F0aW9uL05hdmlnYXRvckdlb2xvY2F0aW9uLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6TmF2aWdhdG9yR2VvbG9jYXRpb246Omdl
b2xvY2F0aW9uKToKKyAgICAgICAgKiBNb2R1bGVzL2dlb2xvY2F0aW9uL05hdmlnYXRvckdlb2xv
Y2F0aW9uLmg6CisgICAgICAgIChOYXZpZ2F0b3JHZW9sb2NhdGlvbik6CisgICAgICAgICogZG9t
L0RvY3VtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50OjpEb2N1bWVudCk6Cisg
ICAgICAgICogZG9tL0RvY3VtZW50Lmg6CisgICAgICAgIChEb2N1bWVudCk6CisgICAgICAgICog
aGlzdG9yeS9QYWdlQ2FjaGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6bG9nQ2FuQ2FjaGVGcmFt
ZURlY2lzaW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlBhZ2VDYWNoZTo6Y2FuQ2FjaGVQYWdlQ29u
dGFpbmluZ1RoaXNGcmFtZSk6CisKIDIwMTItMDMtMDUgIFNoaW55YSBLYXdhbmFrYSAgPHNoaW55
YWtAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJlZmFjdG9yaW5nOiBNb3ZlIEhUTUxDb250ZW50
RWxlbWVudDo6YXR0YWNoIHRvIEluc2VydGlvblBvaW50OjphdHRhY2guCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2dlb2xvY2F0aW9uL0dlb2xvY2F0aW9uLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2dlb2xvY2F0aW9uL0dlb2xvY2F0aW9uLmNwcAkocmV2
aXNpb24gMTA5NzA0KQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9nZW9sb2NhdGlvbi9HZW9s
b2NhdGlvbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIyNSwzOCArMjI1LDU3IEBAIHZvaWQgR2Vv
bG9jYXRpb246OldhdGNoZXJzOjpnZXROb3RpZmllcnMKICAgICBjb3B5VmFsdWVzVG9WZWN0b3Io
bV9pZFRvTm90aWZpZXJNYXAsIGNvcHkpOwogfQogCi1HZW9sb2NhdGlvbjo6R2VvbG9jYXRpb24o
RnJhbWUqIGZyYW1lKQotICAgIDogRE9NV2luZG93UHJvcGVydHkoZnJhbWUpCitQYXNzUmVmUHRy
PEdlb2xvY2F0aW9uPiBHZW9sb2NhdGlvbjo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQq
IGNvbnRleHQpCit7CisgICAgUmVmUHRyPEdlb2xvY2F0aW9uPiBnZW9sb2NhdGlvbiA9IGFkb3B0
UmVmKG5ldyBHZW9sb2NhdGlvbihjb250ZXh0KSk7CisgICAgZ2VvbG9jYXRpb24tPnN1c3BlbmRJ
Zk5lZWRlZCgpOworICAgIHJldHVybiBnZW9sb2NhdGlvbi5yZWxlYXNlKCk7Cit9CisKK0dlb2xv
Y2F0aW9uOjpHZW9sb2NhdGlvbihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0KQorICAg
IDogQWN0aXZlRE9NT2JqZWN0KGNvbnRleHQsIHRoaXMpCiAjaWYgIUVOQUJMRShDTElFTlRfQkFT
RURfR0VPTE9DQVRJT04pCiAgICAgLCBtX3NlcnZpY2UoR2VvbG9jYXRpb25TZXJ2aWNlOjpjcmVh
dGUodGhpcykpCiAjZW5kaWYKICAgICAsIG1fYWxsb3dHZW9sb2NhdGlvbihVbmtub3duKQogewot
ICAgIGlmICghbV9mcmFtZSkKLSAgICAgICAgcmV0dXJuOwotICAgIEFTU0VSVChtX2ZyYW1lLT5k
b2N1bWVudCgpKTsKLSAgICBtX2ZyYW1lLT5kb2N1bWVudCgpLT5zZXRVc2luZ0dlb2xvY2F0aW9u
KHRydWUpOwogfQogCiBHZW9sb2NhdGlvbjo6fkdlb2xvY2F0aW9uKCkKIHsKICAgICBBU1NFUlQo
bV9hbGxvd0dlb2xvY2F0aW9uICE9IEluUHJvZ3Jlc3MpOwotICAgIEFTU0VSVCghbV9mcmFtZSk7
Cit9CisKK0RvY3VtZW50KiBHZW9sb2NhdGlvbjo6ZG9jdW1lbnQoKSBjb25zdAoreworICAgIEFT
U0VSVCghc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpIHx8IHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQo
KS0+aXNEb2N1bWVudCgpKTsKKyAgICByZXR1cm4gc3RhdGljX2Nhc3Q8RG9jdW1lbnQqPihzY3Jp
cHRFeGVjdXRpb25Db250ZXh0KCkpOworfQorCitGcmFtZSogR2VvbG9jYXRpb246OmZyYW1lKCkg
Y29uc3QKK3sKKyAgICByZXR1cm4gZG9jdW1lbnQoKSA/IGRvY3VtZW50KCktPmZyYW1lKCkgOiAw
OwogfQogCiBQYWdlKiBHZW9sb2NhdGlvbjo6cGFnZSgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1f
ZnJhbWUgPyBtX2ZyYW1lLT5wYWdlKCkgOiAwOworICAgIHJldHVybiBkb2N1bWVudCgpID8gZG9j
dW1lbnQoKS0+cGFnZSgpIDogMDsKIH0KIAotdm9pZCBHZW9sb2NhdGlvbjo6cmVzZXQoKQordm9p
ZCBHZW9sb2NhdGlvbjo6c3RvcCgpCiB7CisgICAgLy8gRklYTUU6IFdlIHNob3VsZCBpZGVhbGx5
IGFsbG93IGV4aXN0aW5nIEdlb2xvY2F0aW9uIGFjdGl2aXRpZXMgdG8gY29udGludWUKKyAgICAv
LyB3aGVuIHRoZSBHZW9sb2NhdGlvbidzIGlmcmFtZSBpcyByZXBhcmVudGVkLiAoQXNzdW1pbmcg
d2UgY29udGludWUgdG8KKyAgICAvLyBzdXBwb3J0IHJlcGFyZW50aW5nIGlmcmFtZXMuKQorICAg
IC8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTU1NzcKKyAg
ICAvLyBhbmQgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyODc3CisK
ICAgICBQYWdlKiBwYWdlID0gdGhpcy0+cGFnZSgpOwogICAgIGlmIChwYWdlICYmIG1fYWxsb3dH
ZW9sb2NhdGlvbiA9PSBJblByb2dyZXNzKSB7CiAjaWYgRU5BQkxFKENMSUVOVF9CQVNFRF9HRU9M
T0NBVElPTikKICAgICAgICAgcGFnZS0+Z2VvbG9jYXRpb25Db250cm9sbGVyKCktPmNhbmNlbFBl
cm1pc3Npb25SZXF1ZXN0KHRoaXMpOwogI2Vsc2UKLSAgICAgICAgcGFnZS0+Y2hyb21lKCktPmNs
aWVudCgpLT5jYW5jZWxHZW9sb2NhdGlvblBlcm1pc3Npb25SZXF1ZXN0Rm9yRnJhbWUobV9mcmFt
ZSwgdGhpcyk7CisgICAgICAgIHBhZ2UtPmNocm9tZSgpLT5jbGllbnQoKS0+Y2FuY2VsR2VvbG9j
YXRpb25QZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1lKGZyYW1lKCksIHRoaXMpOwogI2VuZGlmCiAg
ICAgfQogICAgIC8vIFRoZSBmcmFtZSBtYXkgYmUgbW92aW5nIHRvIGEgbmV3IHBhZ2UgYW5kIHdl
IHdhbnQgdG8gZ2V0IHRoZSBwZXJtaXNzaW9ucyBmcm9tIHRoZSBuZXcgcGFnZSdzIGNsaWVudC4K
QEAgLTI2OCwxNSArMjg3LDYgQEAgdm9pZCBHZW9sb2NhdGlvbjo6cmVzZXQoKQogI2VuZGlmCiB9
CiAKLXZvaWQgR2VvbG9jYXRpb246OmRpc2Nvbm5lY3RGcmFtZSgpCi17Ci0gICAgLy8gT25jZSB3
ZSBhcmUgZGlzY29ubmVjdGVkIGZyb20gdGhlIEZyYW1lLCBpdCBpcyBubyBsb25nZXIgcG9zc2li
bGUgdG8gcGVyZm9ybSBhbnkgb3BlcmF0aW9ucy4KLSAgICByZXNldCgpOwotICAgIGlmIChtX2Zy
YW1lICYmIG1fZnJhbWUtPmRvY3VtZW50KCkpCi0gICAgICAgIG1fZnJhbWUtPmRvY3VtZW50KCkt
PnNldFVzaW5nR2VvbG9jYXRpb24oZmFsc2UpOwotICAgIERPTVdpbmRvd1Byb3BlcnR5OjpkaXNj
b25uZWN0RnJhbWUoKTsKLX0KLQogR2VvcG9zaXRpb24qIEdlb2xvY2F0aW9uOjpsYXN0UG9zaXRp
b24oKQogewogI2lmIEVOQUJMRShDTElFTlRfQkFTRURfR0VPTE9DQVRJT04pCkBAIC0yOTQsNyAr
MzA0LDcgQEAgR2VvcG9zaXRpb24qIEdlb2xvY2F0aW9uOjpsYXN0UG9zaXRpb24oKQogCiB2b2lk
IEdlb2xvY2F0aW9uOjpnZXRDdXJyZW50UG9zaXRpb24oUGFzc1JlZlB0cjxQb3NpdGlvbkNhbGxi
YWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UG9zaXRpb25FcnJvckNhbGxiYWNrPiBl
cnJvckNhbGxiYWNrLCBQYXNzUmVmUHRyPFBvc2l0aW9uT3B0aW9ucz4gb3B0aW9ucykKIHsKLSAg
ICBpZiAoIW1fZnJhbWUpCisgICAgaWYgKCFmcmFtZSgpKQogICAgICAgICByZXR1cm47CiAKICAg
ICBSZWZQdHI8R2VvTm90aWZpZXI+IG5vdGlmaWVyID0gc3RhcnRSZXF1ZXN0KHN1Y2Nlc3NDYWxs
YmFjaywgZXJyb3JDYWxsYmFjaywgb3B0aW9ucyk7CkBAIC0zMDUsNyArMzE1LDcgQEAgdm9pZCBH
ZW9sb2NhdGlvbjo6Z2V0Q3VycmVudFBvc2l0aW9uKFBhcwogCiBpbnQgR2VvbG9jYXRpb246Ondh
dGNoUG9zaXRpb24oUGFzc1JlZlB0cjxQb3NpdGlvbkNhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ss
IFBhc3NSZWZQdHI8UG9zaXRpb25FcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNrLCBQYXNzUmVm
UHRyPFBvc2l0aW9uT3B0aW9ucz4gb3B0aW9ucykKIHsKLSAgICBpZiAoIW1fZnJhbWUpCisgICAg
aWYgKCFmcmFtZSgpKQogICAgICAgICByZXR1cm4gMDsKIAogICAgIFJlZlB0cjxHZW9Ob3RpZmll
cj4gbm90aWZpZXIgPSBzdGFydFJlcXVlc3Qoc3VjY2Vzc0NhbGxiYWNrLCBlcnJvckNhbGxiYWNr
LCBvcHRpb25zKTsKQEAgLTYyMCw3ICs2MzAsNyBAQCB2b2lkIEdlb2xvY2F0aW9uOjpyZXF1ZXN0
UGVybWlzc2lvbigpCiAjaWYgRU5BQkxFKENMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikKICAgICBw
YWdlLT5nZW9sb2NhdGlvbkNvbnRyb2xsZXIoKS0+cmVxdWVzdFBlcm1pc3Npb24odGhpcyk7CiAj
ZWxzZQotICAgIHBhZ2UtPmNocm9tZSgpLT5jbGllbnQoKS0+cmVxdWVzdEdlb2xvY2F0aW9uUGVy
bWlzc2lvbkZvckZyYW1lKG1fZnJhbWUsIHRoaXMpOworICAgIHBhZ2UtPmNocm9tZSgpLT5jbGll
bnQoKS0+cmVxdWVzdEdlb2xvY2F0aW9uUGVybWlzc2lvbkZvckZyYW1lKGZyYW1lKCksIHRoaXMp
OwogI2VuZGlmCiB9CiAKQEAgLTc1NywxNyArNzY3LDExIEBAIHZvaWQgR2VvbG9jYXRpb246Omhh
bmRsZVBlbmRpbmdQZXJtaXNzaW8KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi12b2lkIEdlb2xv
Y2F0aW9uOjpjbGVhcldhdGNoKGludCkge30KLQotdm9pZCBHZW9sb2NhdGlvbjo6cmVzZXQoKSB7
fQotCi12b2lkIEdlb2xvY2F0aW9uOjpkaXNjb25uZWN0RnJhbWUoKSB7fQotCi1HZW9sb2NhdGlv
bjo6R2VvbG9jYXRpb24oRnJhbWUqKSA6IERPTVdpbmRvd1Byb3BlcnR5KDApIHt9Ci0KLUdlb2xv
Y2F0aW9uOjp+R2VvbG9jYXRpb24oKSB7fQotCi12b2lkIEdlb2xvY2F0aW9uOjpzZXRJc0FsbG93
ZWQoYm9vbCkge30KK3ZvaWQgR2VvbG9jYXRpb246OmNsZWFyV2F0Y2goaW50KSB7IH0KK3ZvaWQg
R2VvbG9jYXRpb246OnN0b3AoKSB7IH0KK0dlb2xvY2F0aW9uOjpHZW9sb2NhdGlvbihTY3JpcHRF
eGVjdXRpb25Db250ZXh0KiBjb250ZXh0KSA6IEFjdGl2ZURPTU9iamVjdChjb250ZXh0LCB0aGlz
KSB7IH0KK0dlb2xvY2F0aW9uOjp+R2VvbG9jYXRpb24oKSB7IH0KK3ZvaWQgR2VvbG9jYXRpb246
OnNldElzQWxsb3dlZChib29sKSB7IH0KIAogfQogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvZ2VvbG9jYXRpb24vR2VvbG9jYXRpb24uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2dlb2xvY2F0aW9uL0dlb2xvY2F0aW9uLmgJKHJldmlzaW9uIDEwOTcwNCkKKysr
IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vR2VvbG9jYXRpb24uaAkod29ya2lu
ZyBjb3B5KQpAQCAtMjcsNyArMjcsNyBAQAogI2lmbmRlZiBHZW9sb2NhdGlvbl9oCiAjZGVmaW5l
IEdlb2xvY2F0aW9uX2gKIAotI2luY2x1ZGUgIkRPTVdpbmRvd1Byb3BlcnR5LmgiCisjaW5jbHVk
ZSAiQWN0aXZlRE9NT2JqZWN0LmgiCiAjaW5jbHVkZSAiR2VvcG9zaXRpb24uaCIKICNpbmNsdWRl
ICJQb3NpdGlvbkNhbGxiYWNrLmgiCiAjaW5jbHVkZSAiUG9zaXRpb25FcnJvci5oIgpAQCAtNDEs
MjQgKzQxLDI3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorY2xhc3MgRG9jdW1lbnQ7CiBj
bGFzcyBGcmFtZTsKICNpZiBFTkFCTEUoQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKQogY2xhc3Mg
R2VvbG9jYXRpb25Qb3NpdGlvbjsKIGNsYXNzIEdlb2xvY2F0aW9uRXJyb3I7CiAjZW5kaWYKIGNs
YXNzIFBhZ2U7CitjbGFzcyBTY3JpcHRFeGVjdXRpb25Db250ZXh0OwogCi1jbGFzcyBHZW9sb2Nh
dGlvbiA6IHB1YmxpYyBSZWZDb3VudGVkPEdlb2xvY2F0aW9uPiwgcHVibGljIERPTVdpbmRvd1By
b3BlcnR5CitjbGFzcyBHZW9sb2NhdGlvbiA6IHB1YmxpYyBSZWZDb3VudGVkPEdlb2xvY2F0aW9u
PiwgcHVibGljIEFjdGl2ZURPTU9iamVjdAogI2lmICFFTkFCTEUoQ0xJRU5UX0JBU0VEX0dFT0xP
Q0FUSU9OKSAmJiBFTkFCTEUoR0VPTE9DQVRJT04pCiAgICAgLCBwdWJsaWMgR2VvbG9jYXRpb25T
ZXJ2aWNlQ2xpZW50CiAjZW5kaWYKIHsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxH
ZW9sb2NhdGlvbj4gY3JlYXRlKEZyYW1lKiBmcmFtZSkgeyByZXR1cm4gYWRvcHRSZWYobmV3IEdl
b2xvY2F0aW9uKGZyYW1lKSk7IH0KKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxHZW9sb2NhdGlvbj4g
Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqKTsKICAgICB+R2VvbG9jYXRpb24oKTsKIAot
ICAgIHZpcnR1YWwgdm9pZCBkaXNjb25uZWN0RnJhbWUoKSBPVkVSUklERTsKLSAgICB2b2lkIHJl
c2V0KCk7CisgICAgdmlydHVhbCB2b2lkIHN0b3AoKSBPVkVSUklERTsKKyAgICBEb2N1bWVudCog
ZG9jdW1lbnQoKSBjb25zdDsKKyAgICBGcmFtZSogZnJhbWUoKSBjb25zdDsKIAogICAgIHZvaWQg
Z2V0Q3VycmVudFBvc2l0aW9uKFBhc3NSZWZQdHI8UG9zaXRpb25DYWxsYmFjaz4sIFBhc3NSZWZQ
dHI8UG9zaXRpb25FcnJvckNhbGxiYWNrPiwgUGFzc1JlZlB0cjxQb3NpdGlvbk9wdGlvbnM+KTsK
ICAgICBpbnQgd2F0Y2hQb3NpdGlvbihQYXNzUmVmUHRyPFBvc2l0aW9uQ2FsbGJhY2s+LCBQYXNz
UmVmUHRyPFBvc2l0aW9uRXJyb3JDYWxsYmFjaz4sIFBhc3NSZWZQdHI8UG9zaXRpb25PcHRpb25z
Pik7CkBAIC03OSw3ICs4Miw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBpc0FsbG93ZWQoKSBjb25z
dCB7IHJldHVybiBtX2FsbG93R2VvbG9jYXRpb24gPT0gWWVzOyB9CiAgICAgYm9vbCBpc0Rlbmll
ZCgpIGNvbnN0IHsgcmV0dXJuIG1fYWxsb3dHZW9sb2NhdGlvbiA9PSBObzsgfQogCi0gICAgZXhw
bGljaXQgR2VvbG9jYXRpb24oRnJhbWUqKTsKKyAgICBleHBsaWNpdCBHZW9sb2NhdGlvbihTY3Jp
cHRFeGVjdXRpb25Db250ZXh0Kik7CiAKICAgICBQYWdlKiBwYWdlKCkgY29uc3Q7CiAKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vTmF2aWdhdG9yR2VvbG9jYXRpb24u
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vTmF2
aWdhdG9yR2VvbG9jYXRpb24uY3BwCShyZXZpc2lvbiAxMDk3MDQpCisrKyBTb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2dlb2xvY2F0aW9uL05hdmlnYXRvckdlb2xvY2F0aW9uLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMjMsNiArMjMsOCBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIk5h
dmlnYXRvckdlb2xvY2F0aW9uLmgiCiAKKyNpbmNsdWRlICJEb2N1bWVudC5oIgorI2luY2x1ZGUg
IkZyYW1lLmgiCiAjaW5jbHVkZSAiR2VvbG9jYXRpb24uaCIKICNpbmNsdWRlICJOYXZpZ2F0b3Iu
aCIKIApAQCAtMzcsMTcgKzM5LDYgQEAgTmF2aWdhdG9yR2VvbG9jYXRpb246On5OYXZpZ2F0b3JH
ZW9sb2NhdAogewogfQogCi12b2lkIE5hdmlnYXRvckdlb2xvY2F0aW9uOjp3aWxsRGV0YWNoUGFn
ZSgpCi17Ci0gICAgLy8gRklYTUU6IFdlIHNob3VsZCBpZGVhbGx5IGFsbG93IGV4aXN0aW5nIEdl
b2xvY2F0aW9uIGFjdGl2aXRpZXMgdG8gY29udGludWUKLSAgICAvLyB3aGVuIHRoZSBHZW9sb2Nh
dGlvbidzIGlmcmFtZSBpcyByZXBhcmVudGVkLiAoQXNzdW1pbmcgd2UgY29udGludWUgdG8KLSAg
ICAvLyBzdXBwb3J0IHJlcGFyZW50aW5nIGlmcmFtZXMuKQotICAgIC8vIFNlZSBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTU1NzcKLSAgICAvLyBhbmQgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyODc3Ci0gICAgaWYgKG1fZ2VvbG9jYXRp
b24pCi0gICAgICAgIG1fZ2VvbG9jYXRpb24tPnJlc2V0KCk7Ci19Ci0KIE5hdmlnYXRvckdlb2xv
Y2F0aW9uKiBOYXZpZ2F0b3JHZW9sb2NhdGlvbjo6ZnJvbShOYXZpZ2F0b3IqIG5hdmlnYXRvcikK
IHsKICAgICBERUZJTkVfU1RBVElDX0xPQ0FMKEF0b21pY1N0cmluZywgbmFtZSwgKCJOYXZpZ2F0
b3JHZW9sb2NhdGlvbiIpKTsKQEAgLTY2LDggKzU3LDggQEAgR2VvbG9jYXRpb24qIE5hdmlnYXRv
ckdlb2xvY2F0aW9uOjpnZW9sbwogCiBHZW9sb2NhdGlvbiogTmF2aWdhdG9yR2VvbG9jYXRpb246
Omdlb2xvY2F0aW9uKCkgY29uc3QKIHsKLSAgICBpZiAoIW1fZ2VvbG9jYXRpb24pCi0gICAgICAg
IG1fZ2VvbG9jYXRpb24gPSBHZW9sb2NhdGlvbjo6Y3JlYXRlKGZyYW1lKCkpOworICAgIGlmICgh
bV9nZW9sb2NhdGlvbiAmJiBmcmFtZSgpKQorICAgICAgICBtX2dlb2xvY2F0aW9uID0gR2VvbG9j
YXRpb246OmNyZWF0ZShmcmFtZSgpLT5kb2N1bWVudCgpKTsKICAgICByZXR1cm4gbV9nZW9sb2Nh
dGlvbi5nZXQoKTsKIH0KIApJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9nZW9sb2NhdGlv
bi9OYXZpZ2F0b3JHZW9sb2NhdGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvZ2VvbG9jYXRpb24vTmF2aWdhdG9yR2VvbG9jYXRpb24uaAkocmV2aXNpb24gMTA5NzA0
KQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9nZW9sb2NhdGlvbi9OYXZpZ2F0b3JHZW9sb2Nh
dGlvbi5oCSh3b3JraW5nIGNvcHkpCkBAIC00MCw4ICs0MCw2IEBAIHB1YmxpYzoKIHByaXZhdGU6
CiAgICAgTmF2aWdhdG9yR2VvbG9jYXRpb24oRnJhbWUqKTsKIAotICAgIHZpcnR1YWwgdm9pZCB3
aWxsRGV0YWNoUGFnZSgpIE9WRVJSSURFOwotCiAgICAgbXV0YWJsZSBSZWZQdHI8R2VvbG9jYXRp
b24+IG1fZ2VvbG9jYXRpb247CiB9OwogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1l
bnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAJKHJl
dmlzaW9uIDEwOTcwNCkKKysrIFNvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTQxOSw3ICs0MTksNiBAQCBEb2N1bWVudDo6RG9jdW1lbnQoRnJhbWUqIGZy
YW1lLCBjb25zdCBLCiAgICAgLCBtX2lzSFRNTChpc0hUTUwpCiAgICAgLCBtX2lzVmlld1NvdXJj
ZShmYWxzZSkKICAgICAsIG1fc2F3RWxlbWVudHNJbktub3duTmFtZXNwYWNlcyhmYWxzZSkKLSAg
ICAsIG1fdXNpbmdHZW9sb2NhdGlvbihmYWxzZSkKICAgICAsIG1fZXZlbnRRdWV1ZShEb2N1bWVu
dEV2ZW50UXVldWU6OmNyZWF0ZSh0aGlzKSkKICAgICAsIG1fd2Vha1JlZmVyZW5jZShEb2N1bWVu
dFdlYWtSZWZlcmVuY2U6OmNyZWF0ZSh0aGlzKSkKICAgICAsIG1faWRBdHRyaWJ1dGVOYW1lKGlk
QXR0cikKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCShyZXZpc2lvbiAxMDk3MDQpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaAkod29ya2luZyBjb3B5KQpAQCAtMTAzNiw5ICsxMDM2
LDYgQEAgcHVibGljOgogICAgIHZpcnR1YWwgYm9vbCBpc0NvbnRleHRUaHJlYWQoKSBjb25zdDsK
ICAgICB2aXJ0dWFsIGJvb2wgaXNKU0V4ZWN1dGlvbkZvcmJpZGRlbigpIGNvbnN0IHsgcmV0dXJu
IGZhbHNlOyB9CiAKLSAgICB2b2lkIHNldFVzaW5nR2VvbG9jYXRpb24oYm9vbCBmKSB7IG1fdXNp
bmdHZW9sb2NhdGlvbiA9IGY7IH0KLSAgICBib29sIHVzaW5nR2VvbG9jYXRpb24oKSBjb25zdCB7
IHJldHVybiBtX3VzaW5nR2VvbG9jYXRpb247IH07Ci0KICAgICBib29sIGNvbnRhaW5zVmFsaWRp
dHlTdHlsZVJ1bGVzKCkgY29uc3QgeyByZXR1cm4gbV9jb250YWluc1ZhbGlkaXR5U3R5bGVSdWxl
czsgfQogICAgIHZvaWQgc2V0Q29udGFpbnNWYWxpZGl0eVN0eWxlUnVsZXMoKSB7IG1fY29udGFp
bnNWYWxpZGl0eVN0eWxlUnVsZXMgPSB0cnVlOyB9CiAKQEAgLTE0MTksOCArMTQxNiw2IEBAIHBy
aXZhdGU6CiAgICAgYm9vbCBtX2lzVmlld1NvdXJjZTsKICAgICBib29sIG1fc2F3RWxlbWVudHNJ
bktub3duTmFtZXNwYWNlczsKIAotICAgIGJvb2wgbV91c2luZ0dlb2xvY2F0aW9uOwotCiAgICAg
UmVmUHRyPERvY3VtZW50RXZlbnRRdWV1ZT4gbV9ldmVudFF1ZXVlOwogCiAgICAgUmVmUHRyPERv
Y3VtZW50V2Vha1JlZmVyZW5jZT4gbV93ZWFrUmVmZXJlbmNlOwpJbmRleDogU291cmNlL1dlYkNv
cmUvaGlzdG9yeS9QYWdlQ2FjaGUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2hp
c3RvcnkvUGFnZUNhY2hlLmNwcAkocmV2aXNpb24gMTA5NzA0KQorKysgU291cmNlL1dlYkNvcmUv
aGlzdG9yeS9QYWdlQ2FjaGUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMTYsMTAgKzExNiw2IEBA
IHN0YXRpYyBib29sIGxvZ0NhbkNhY2hlRnJhbWVEZWNpc2lvbihGcmEKICAgICAgICAgICAgIGNh
bm5vdENhY2hlID0gdHJ1ZTsKICAgICAgICAgfQogI2VuZGlmCi0gICAgICAgIGlmIChmcmFtZS0+
ZG9jdW1lbnQoKS0+dXNpbmdHZW9sb2NhdGlvbigpKSB7Ci0gICAgICAgICAgICBQQ0xPRygiICAg
LUZyYW1lIHVzZXMgR2VvbG9jYXRpb24iKTsKLSAgICAgICAgICAgIGNhbm5vdENhY2hlID0gdHJ1
ZTsKLSAgICAgICAgfQogICAgICAgICBpZiAoIWZyYW1lLT5sb2FkZXIoKS0+aGlzdG9yeSgpLT5j
dXJyZW50SXRlbSgpKSB7CiAgICAgICAgICAgICBQQ0xPRygiICAgLU5vIGN1cnJlbnQgaGlzdG9y
eSBpdGVtIik7CiAgICAgICAgICAgICBjYW5ub3RDYWNoZSA9IHRydWU7CkBAIC0yNTMsNyArMjQ5
LDYgQEAgYm9vbCBQYWdlQ2FjaGU6OmNhbkNhY2hlUGFnZUNvbnRhaW5pbmdUaAogI2lmIEVOQUJM
RShTSEFSRURfV09SS0VSUykKICAgICAgICAgJiYgIVNoYXJlZFdvcmtlclJlcG9zaXRvcnk6Omhh
c1NoYXJlZFdvcmtlcnMoZG9jdW1lbnQpCiAjZW5kaWYKLSAgICAgICAgJiYgIWRvY3VtZW50LT51
c2luZ0dlb2xvY2F0aW9uKCkKICAgICAgICAgJiYgZnJhbWVMb2FkZXItPmhpc3RvcnkoKS0+Y3Vy
cmVudEl0ZW0oKQogICAgICAgICAmJiAhZnJhbWVMb2FkZXItPnF1aWNrUmVkaXJlY3RDb21pbmco
KQogICAgICAgICAmJiAhZG9jdW1lbnRMb2FkZXItPmlzTG9hZGluZ0luQVBJU2Vuc2UoKQpJbmRl
eDogU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwOTcxOSkKKysrIFNvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAK
KzIwMTItMDMtMDUgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KKworICAgICAgICBH
ZW9sb2NhdGlvbiBzaG91bGQgdXNlIGEgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCBhcyBpdHMgY29u
dGV4dCBvYmplY3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTgwMjQ4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgS2VudGFybyBIYXJhLgorCisgICAgICAg
IFJhdGhlciB0aGFuIGluZGlyZWN0aW5nIHRocm91Z2ggdGhlIEZyYW1lIHRvIGdldCB0aGUgU2Vj
dXJpdHlPcmlnaW4sIHdlCisgICAgICAgIHNob3VsZCBnZXQgdGhlIFNlY3VyaXR5T3JpZ2luIGRp
cmVjdGx5IGZyb20gU2NyaXB0RXhlY3V0aW9uQ29udGV4dC4KKworICAgICAgICAqIHNyYy9XZWJH
ZW9sb2NhdGlvblBlcm1pc3Npb25SZXF1ZXN0LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViR2Vv
bG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdDo6c2VjdXJpdHlPcmlnaW4pOgorCiAyMDEyLTAzLTAz
ICBCZW5qYW1pbiBQb3VsYWluICA8YmVuamFtaW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBSZW1v
dmUgdGhlIHJlZHVuZGFudCBtZXRob2QgS1VSTDo6cHJvdG9jb2xJbkhUVFBGYW1pbHkoKQpJbmRl
eDogU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVx
dWVzdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViR2Vv
bG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdC5jcHAJKHJldmlzaW9uIDEwOTcwNCkKKysrIFNvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3QuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0zOSw3ICszOSw3IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogCiBX
ZWJTZWN1cml0eU9yaWdpbiBXZWJHZW9sb2NhdGlvblBlcm1pc3Npb25SZXF1ZXN0OjpzZWN1cml0
eU9yaWdpbigpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIFdlYlNlY3VyaXR5T3JpZ2luKG1fcHJpdmF0
ZS0+ZnJhbWUoKS0+ZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSk7CisgICAgcmV0dXJuIFdl
YlNlY3VyaXR5T3JpZ2luKG1fcHJpdmF0ZS0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpLT5zZWN1
cml0eU9yaWdpbigpKTsKIH0KIAogdm9pZCBXZWJHZW9sb2NhdGlvblBlcm1pc3Npb25SZXF1ZXN0
OjpzZXRJc0FsbG93ZWQoYm9vbCBhbGxvd2VkKQpJbmRleDogU291cmNlL1dlYktpdC9tYWMvV2Vi
Vmlldy9XZWJGcmFtZS5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3
L1dlYkZyYW1lLm1tCShyZXZpc2lvbiAxMDk3MDQpCisrKyBTb3VyY2UvV2ViS2l0L21hYy9XZWJW
aWV3L1dlYkZyYW1lLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0xMTI0LDEwICsxMTI0LDYgQEAgLSAo
TlNNdXRhYmxlRGljdGlvbmFyeSAqKV9jYWNoZWFiaWxpdHlEaQogICAgICAgICBpZiAoRGF0YWJh
c2VDb250ZXh0OjpoYXNPcGVuRGF0YWJhc2VzKGRvY3VtZW50KSkKICAgICAgICAgICAgIFtyZXN1
bHQgc2V0T2JqZWN0OltOU051bWJlciBudW1iZXJXaXRoQm9vbDpZRVNdIGZvcktleTpXZWJGcmFt
ZVVzZXNEYXRhYmFzZXNdOwogI2VuZGlmCi0gICAgICAgICAgICAKLSAgICAgICAgaWYgKGRvY3Vt
ZW50LT51c2luZ0dlb2xvY2F0aW9uKCkpCi0gICAgICAgICAgICBbcmVzdWx0IHNldE9iamVjdDpb
TlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6WUVTXSBmb3JLZXk6V2ViRnJhbWVVc2VzR2VvbG9jYXRp
b25dOwotICAgICAgICAgICAgCiAgICAgICAgIGlmICghZG9jdW1lbnQtPmNhblN1c3BlbmRBY3Rp
dmVET01PYmplY3RzKCkpCiAgICAgICAgICAgICBbcmVzdWx0IHNldE9iamVjdDpbTlNOdW1iZXIg
bnVtYmVyV2l0aEJvb2w6WUVTXSBmb3JLZXk6V2ViRnJhbWVDYW5TdXNwZW5kQWN0aXZlRE9NT2Jq
ZWN0c107CiAgICAgfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>