<?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>158488</bug_id>
          
          <creation_ts>2016-06-07 11:57:41 -0700</creation_ts>
          <short_desc>calculatedDisplayName() and friends actually need a VM&amp; and not a ExecState/CallFrame.</short_desc>
          <delta_ts>2016-06-07 12:54:05 -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>JavaScriptCore</component>
          <version>WebKit Local 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="Mark Lam">mark.lam</reporter>
          <assigned_to name="Mark Lam">mark.lam</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>keith_miller</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1200149</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2016-06-07 11:57:41 -0700</bug_when>
    <thetext>calculatedDisplayName() (and some of its friends) actually just need a VM&amp;.  Their work has nothing to do with an ExecState at all.  This patch will make that clear by changing these functions to take a VM&amp; arg instead of an ExecState* or CallFrame*.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1200154</commentid>
    <comment_count>1</comment_count>
      <attachid>280729</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2016-06-07 12:06:15 -0700</bug_when>
    <thetext>Created attachment 280729
proposed patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1200155</commentid>
    <comment_count>2</comment_count>
      <attachid>280729</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2016-06-07 12:07:55 -0700</bug_when>
    <thetext>Comment on attachment 280729
proposed patch.

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1200170</commentid>
    <comment_count>3</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2016-06-07 12:52:41 -0700</bug_when>
    <thetext>Thanks for the review.  Landed in r201766: &lt;http://trac.webkit.org/r201766&gt;.

Unfortunately, I didn&apos;t see the complaining EWS bots till now.  I&apos;ll look into it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1200173</commentid>
    <comment_count>4</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2016-06-07 12:53:54 -0700</bug_when>
    <thetext>EWS bots says that they are unable to build without my patch.  So, not my issue.  And I&apos;m good to go.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>280729</attachid>
            <date>2016-06-07 12:06:15 -0700</date>
            <delta_ts>2016-06-07 12:07:55 -0700</delta_ts>
            <desc>proposed patch.</desc>
            <filename>bug-158488.patch</filename>
            <type>text/plain</type>
            <size>16590</size>
            <attacher name="Mark Lam">mark.lam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjAxNzYzKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDU0IEBA
CisyMDE2LTA2LTA3ICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KKworICAgICAgICBj
YWxjdWxhdGVkRGlzcGxheU5hbWUoKSBhbmQgZnJpZW5kcyBhY3R1YWxseSBuZWVkIGEgVk0mIGFu
ZCBub3QgYSBFeGVjU3RhdGUvQ2FsbEZyYW1lLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU4NDg4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgY2FsY3VsYXRlZERpc3BsYXlOYW1lKCkgKGFuZCBzb21lIG9m
IGl0cyBmcmllbmRzKSBhY3R1YWxseSBqdXN0IG5lZWQgYSBWTSYuCisgICAgICAgIFRoZWlyIHdv
cmsgaGFzIG5vdGhpbmcgdG8gZG8gd2l0aCBhbiBFeGVjU3RhdGUgYXQgYWxsLiAgVGhpcyBwYXRj
aCB3aWxsIG1ha2UgdGhhdAorICAgICAgICBjbGVhciBieSBjaGFuZ2luZyB0aGVzZSBmdW5jdGlv
bnMgdG8gdGFrZSBhIFZNJiBhcmcgaW5zdGVhZCBvZiBhbiBFeGVjU3RhdGUqIG9yCisgICAgICAg
IENhbGxGcmFtZSouCisKKyAgICAgICAgQWxzbyByZW1vdmVkIHRoZSBKU19FWFBPUlRfUFJJVkFU
RSBhdHRyaWJ1dGUgZnJvbSBJbnRlcnByZXRlcjo6U3RhY2tGcmFtZTo6dG9TdHJpbmcoKS4KKyAg
ICAgICAgVGhlIEpTX0VYUE9SVF9QUklWQVRFIGF0dHJpYnV0ZSB3YXMgYSBob2xkb3ZlciBmcm9t
IHRoZSBkYXlzIHdoZW4gV2ViSW5zcGVjdG9yCisgICAgICAgIHdhcyBlbnRpcmVseSBpbiBXZWJD
b3JlLiAgSXQgaXMgbm8gbG9uZ2VyIG5lZWRlZC4KKworICAgICAgICAqIGRlYnVnZ2VyL0RlYnVn
Z2VyQ2FsbEZyYW1lLmNwcDoKKyAgICAgICAgKEpTQzo6RGVidWdnZXJDYWxsRnJhbWU6OmZ1bmN0
aW9uTmFtZSk6CisgICAgICAgICogaW5zcGVjdG9yL0pTSW5qZWN0ZWRTY3JpcHRIb3N0LmNwcDoK
KyAgICAgICAgKEluc3BlY3Rvcjo6SlNJbmplY3RlZFNjcmlwdEhvc3Q6OmZ1bmN0aW9uRGV0YWls
cyk6CisgICAgICAgICogaW5zcGVjdG9yL1NjcmlwdENhbGxTdGFja0ZhY3RvcnkuY3BwOgorICAg
ICAgICAoSW5zcGVjdG9yOjpjcmVhdGVTY3JpcHRDYWxsU3RhY2tGcm9tRXhjZXB0aW9uKToKKyAg
ICAgICAgKiBpbnRlcnByZXRlci9DYWxsRnJhbWUuY3BwOgorICAgICAgICAoSlNDOjpDYWxsRnJh
bWU6OmZyaWVuZGx5RnVuY3Rpb25OYW1lKToKKyAgICAgICAgKiBpbnRlcnByZXRlci9JbnRlcnBy
ZXRlci5jcHA6CisgICAgICAgIChKU0M6OlN0YWNrRnJhbWU6OmZyaWVuZGx5U291cmNlVVJMKToK
KyAgICAgICAgKEpTQzo6U3RhY2tGcmFtZTo6ZnJpZW5kbHlGdW5jdGlvbk5hbWUpOgorICAgICAg
ICAoSlNDOjpTdGFja0ZyYW1lOjpleHByZXNzaW9uSW5mbyk6CisgICAgICAgIChKU0M6OlN0YWNr
RnJhbWU6OnRvU3RyaW5nKToKKyAgICAgICAgKEpTQzo6SW50ZXJwcmV0ZXI6OnN0YWNrVHJhY2VB
c1N0cmluZyk6CisgICAgICAgICogaW50ZXJwcmV0ZXIvSW50ZXJwcmV0ZXIuaDoKKyAgICAgICAg
KiBpbnRlcnByZXRlci9TdGFja1Zpc2l0b3IuY3BwOgorICAgICAgICAoSlNDOjpTdGFja1Zpc2l0
b3I6OkZyYW1lOjpmdW5jdGlvbk5hbWUpOgorICAgICAgICAqIHJ1bnRpbWUvSW50ZXJuYWxGdW5j
dGlvbi5jcHA6CisgICAgICAgIChKU0M6OkludGVybmFsRnVuY3Rpb246Om5hbWUpOgorICAgICAg
ICAoSlNDOjpJbnRlcm5hbEZ1bmN0aW9uOjpkaXNwbGF5TmFtZSk6CisgICAgICAgIChKU0M6Oklu
dGVybmFsRnVuY3Rpb246OmdldENhbGxEYXRhKToKKyAgICAgICAgKEpTQzo6SW50ZXJuYWxGdW5j
dGlvbjo6Y2FsY3VsYXRlZERpc3BsYXlOYW1lKToKKyAgICAgICAgKiBydW50aW1lL0ludGVybmFs
RnVuY3Rpb24uaDoKKyAgICAgICAgKEpTQzo6SW50ZXJuYWxGdW5jdGlvbjo6Y3JlYXRlU3RydWN0
dXJlKToKKyAgICAgICAgKiBydW50aW1lL0pTRnVuY3Rpb24uY3BwOgorICAgICAgICAoSlNDOjpK
U0Z1bmN0aW9uOjpuYW1lKToKKyAgICAgICAgKEpTQzo6SlNGdW5jdGlvbjo6ZGlzcGxheU5hbWUp
OgorICAgICAgICAoSlNDOjpKU0Z1bmN0aW9uOjpjYWxjdWxhdGVkRGlzcGxheU5hbWUpOgorICAg
ICAgICAoSlNDOjpKU0Z1bmN0aW9uOjpnZXRDb25zdHJ1Y3REYXRhKToKKyAgICAgICAgKEpTQzo6
Z2V0Q2FsY3VsYXRlZERpc3BsYXlOYW1lKToKKyAgICAgICAgKiBydW50aW1lL0pTRnVuY3Rpb24u
aDoKKyAgICAgICAgKEpTQzo6SlNGdW5jdGlvbjo6ZXhlY3V0YWJsZSk6CisgICAgICAgICogcnVu
dGltZS9KU09iamVjdC5jcHA6CisgICAgICAgIChKU0M6OkpTT2JqZWN0OjpjYWxjdWxhdGVkQ2xh
c3NOYW1lKToKKwogMjAxNi0wNi0wNyAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWls
LmNvbT4KIAogICAgICAgICBbSlNDXSBEbyBub3QgYWxsb2NhdGUgdW5uZWNlc3NhcnkgVVRGLTgg
c3RyaW5nIGZvciBlbmNvZGVYWFggZnVuY3Rpb25zCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvZGVidWdnZXIvRGVidWdnZXJDYWxsRnJhbWUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dlckNhbGxGcmFtZS5jcHAJKHJldmlzaW9uIDIw
MTc2MCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dlckNhbGxGcmFt
ZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEzOCw3ICsxMzgsNyBAQCBTdHJpbmcgRGVidWdnZXJD
YWxsRnJhbWU6OmZ1bmN0aW9uTmFtZSgpCiAKICAgICBpZiAoaXNUYWlsRGVsZXRlZCgpKSB7CiAg
ICAgICAgIGlmIChKU0Z1bmN0aW9uKiBmdW5jID0ganNEeW5hbWljQ2FzdDxKU0Z1bmN0aW9uKj4o
bV9zaGFkb3dDaGlja2VuRnJhbWUuY2FsbGVlKSkKLSAgICAgICAgICAgIHJldHVybiBmdW5jLT5j
YWxjdWxhdGVkRGlzcGxheU5hbWUobV92YWxpZE1hY2hpbmVGcmFtZSk7CisgICAgICAgICAgICBy
ZXR1cm4gZnVuYy0+Y2FsY3VsYXRlZERpc3BsYXlOYW1lKG1fdmFsaWRNYWNoaW5lRnJhbWUtPnZt
KCkpOwogICAgICAgICByZXR1cm4gbV9zaGFkb3dDaGlja2VuRnJhbWUuY29kZUJsb2NrLT5pbmZl
cnJlZE5hbWUoKS5kYXRhKCk7CiAgICAgfQogCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
aW5zcGVjdG9yL0pTSW5qZWN0ZWRTY3JpcHRIb3N0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTSW5qZWN0ZWRTY3JpcHRIb3N0LmNwcAkocmV2aXNp
b24gMjAxNzYwKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0luamVjdGVk
U2NyaXB0SG9zdC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIyMCwyMiArMjIwLDIzIEBAIEpTVmFs
dWUgSlNJbmplY3RlZFNjcmlwdEhvc3Q6OmZ1bmN0aW9uRGUKICAgICBpZiAoY29sdW1uTnVtYmVy
KQogICAgICAgICBjb2x1bW5OdW1iZXIgLT0gMTsKIAorICAgIFZNJiB2bSA9IGV4ZWMtPnZtKCk7
CiAgICAgU3RyaW5nIHNjcmlwdElEID0gU3RyaW5nOjpudW1iZXIoc291cmNlQ29kZS0+cHJvdmlk
ZXIoKS0+YXNJRCgpKTsKICAgICBKU09iamVjdCogbG9jYXRpb24gPSBjb25zdHJ1Y3RFbXB0eU9i
amVjdChleGVjKTsKLSAgICBsb2NhdGlvbi0+cHV0RGlyZWN0KGV4ZWMtPnZtKCksIElkZW50aWZp
ZXI6OmZyb21TdHJpbmcoZXhlYywgInNjcmlwdElkIiksIGpzU3RyaW5nKGV4ZWMsIHNjcmlwdElE
KSk7Ci0gICAgbG9jYXRpb24tPnB1dERpcmVjdChleGVjLT52bSgpLCBJZGVudGlmaWVyOjpmcm9t
U3RyaW5nKGV4ZWMsICJsaW5lTnVtYmVyIiksIGpzTnVtYmVyKGxpbmVOdW1iZXIpKTsKLSAgICBs
b2NhdGlvbi0+cHV0RGlyZWN0KGV4ZWMtPnZtKCksIElkZW50aWZpZXI6OmZyb21TdHJpbmcoZXhl
YywgImNvbHVtbk51bWJlciIpLCBqc051bWJlcihjb2x1bW5OdW1iZXIpKTsKKyAgICBsb2NhdGlv
bi0+cHV0RGlyZWN0KHZtLCBJZGVudGlmaWVyOjpmcm9tU3RyaW5nKGV4ZWMsICJzY3JpcHRJZCIp
LCBqc1N0cmluZyhleGVjLCBzY3JpcHRJRCkpOworICAgIGxvY2F0aW9uLT5wdXREaXJlY3Qodm0s
IElkZW50aWZpZXI6OmZyb21TdHJpbmcoZXhlYywgImxpbmVOdW1iZXIiKSwganNOdW1iZXIobGlu
ZU51bWJlcikpOworICAgIGxvY2F0aW9uLT5wdXREaXJlY3Qodm0sIElkZW50aWZpZXI6OmZyb21T
dHJpbmcoZXhlYywgImNvbHVtbk51bWJlciIpLCBqc051bWJlcihjb2x1bW5OdW1iZXIpKTsKIAog
ICAgIEpTT2JqZWN0KiByZXN1bHQgPSBjb25zdHJ1Y3RFbXB0eU9iamVjdChleGVjKTsKLSAgICBy
ZXN1bHQtPnB1dERpcmVjdChleGVjLT52bSgpLCBJZGVudGlmaWVyOjpmcm9tU3RyaW5nKGV4ZWMs
ICJsb2NhdGlvbiIpLCBsb2NhdGlvbik7CisgICAgcmVzdWx0LT5wdXREaXJlY3Qodm0sIElkZW50
aWZpZXI6OmZyb21TdHJpbmcoZXhlYywgImxvY2F0aW9uIiksIGxvY2F0aW9uKTsKIAogICAgIFN0
cmluZyBuYW1lID0gZnVuY3Rpb24tPm5hbWUoKTsKICAgICBpZiAoIW5hbWUuaXNFbXB0eSgpKQot
ICAgICAgICByZXN1bHQtPnB1dERpcmVjdChleGVjLT52bSgpLCBJZGVudGlmaWVyOjpmcm9tU3Ry
aW5nKGV4ZWMsICJuYW1lIiksIGpzU3RyaW5nKGV4ZWMsIG5hbWUpKTsKKyAgICAgICAgcmVzdWx0
LT5wdXREaXJlY3Qodm0sIElkZW50aWZpZXI6OmZyb21TdHJpbmcoZXhlYywgIm5hbWUiKSwganNT
dHJpbmcoZXhlYywgbmFtZSkpOwogCi0gICAgU3RyaW5nIGRpc3BsYXlOYW1lID0gZnVuY3Rpb24t
PmRpc3BsYXlOYW1lKGV4ZWMpOworICAgIFN0cmluZyBkaXNwbGF5TmFtZSA9IGZ1bmN0aW9uLT5k
aXNwbGF5TmFtZSh2bSk7CiAgICAgaWYgKCFkaXNwbGF5TmFtZS5pc0VtcHR5KCkpCi0gICAgICAg
IHJlc3VsdC0+cHV0RGlyZWN0KGV4ZWMtPnZtKCksIElkZW50aWZpZXI6OmZyb21TdHJpbmcoZXhl
YywgImRpc3BsYXlOYW1lIiksIGpzU3RyaW5nKGV4ZWMsIGRpc3BsYXlOYW1lKSk7CisgICAgICAg
IHJlc3VsdC0+cHV0RGlyZWN0KHZtLCBJZGVudGlmaWVyOjpmcm9tU3RyaW5nKGV4ZWMsICJkaXNw
bGF5TmFtZSIpLCBqc1N0cmluZyhleGVjLCBkaXNwbGF5TmFtZSkpOwogCiAgICAgLy8gRklYTUU6
IHByb3ZpZGUgZnVuY3Rpb24gc2NvcGUgZGF0YSBpbiAic2NvcGVzUmF3IiBwcm9wZXJ0eSB3aGVu
IEpTQyBzdXBwb3J0cyBpdC4KICAgICAvLyA8aHR0cHM6Ly93ZWJraXQub3JnL2IvODcxOTI+IFtK
U0NdIGV4cG9zZSBmdW5jdGlvbiAoY2xvc3VyZSkgaW5uZXIgY29udGV4dCB0byBkZWJ1Z2dlcgpJ
bmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9TY3JpcHRDYWxsU3RhY2tGYWN0
b3J5LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL1Nj
cmlwdENhbGxTdGFja0ZhY3RvcnkuY3BwCShyZXZpc2lvbiAyMDE3NjApCisrKyBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvaW5zcGVjdG9yL1NjcmlwdENhbGxTdGFja0ZhY3RvcnkuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0xMzgsMTEgKzEzOCwxMiBAQCBSZWY8U2NyaXB0Q2FsbFN0YWNrPiBjcmVhdGVT
Y3JpcHRDYWxsU3RhCiB7CiAgICAgVmVjdG9yPFNjcmlwdENhbGxGcmFtZT4gZnJhbWVzOwogICAg
IFJlZkNvdW50ZWRBcnJheTxTdGFja0ZyYW1lPiBzdGFja1RyYWNlID0gZXhjZXB0aW9uLT5zdGFj
aygpOworICAgIFZNJiB2bSA9IGV4ZWMtPnZtKCk7CiAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkg
PCBzdGFja1RyYWNlLnNpemUoKSAmJiBpIDwgbWF4U3RhY2tTaXplOyBpKyspIHsKICAgICAgICAg
dW5zaWduZWQgbGluZTsKICAgICAgICAgdW5zaWduZWQgY29sdW1uOwogICAgICAgICBzdGFja1Ry
YWNlW2ldLmNvbXB1dGVMaW5lQW5kQ29sdW1uKGxpbmUsIGNvbHVtbik7Ci0gICAgICAgIFN0cmlu
ZyBmdW5jdGlvbk5hbWUgPSBzdGFja1RyYWNlW2ldLmZyaWVuZGx5RnVuY3Rpb25OYW1lKGV4ZWMp
OworICAgICAgICBTdHJpbmcgZnVuY3Rpb25OYW1lID0gc3RhY2tUcmFjZVtpXS5mcmllbmRseUZ1
bmN0aW9uTmFtZSh2bSk7CiAgICAgICAgIGZyYW1lcy5hcHBlbmQoU2NyaXB0Q2FsbEZyYW1lKGZ1
bmN0aW9uTmFtZSwgc3RhY2tUcmFjZVtpXS5mcmllbmRseVNvdXJjZVVSTCgpLCBzdGF0aWNfY2Fz
dDxTb3VyY2VJRD4oc3RhY2tUcmFjZVtpXS5zb3VyY2VJRCksIGxpbmUsIGNvbHVtbikpOwogICAg
IH0KIApJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2ludGVycHJldGVyL0NhbGxGcmFtZS5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2ludGVycHJldGVyL0NhbGxG
cmFtZS5jcHAJKHJldmlzaW9uIDIwMTc2MCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnRl
cnByZXRlci9DYWxsRnJhbWUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMjksNyArMjI5LDcgQEAg
U3RyaW5nIENhbGxGcmFtZTo6ZnJpZW5kbHlGdW5jdGlvbk5hbWUoKQogICAgICAgICByZXR1cm4g
QVNDSUlMaXRlcmFsKCJnbG9iYWwgY29kZSIpOwogICAgIGNhc2UgRnVuY3Rpb25Db2RlOgogICAg
ICAgICBpZiAoY2FsbGVlKCkpCi0gICAgICAgICAgICByZXR1cm4gZ2V0Q2FsY3VsYXRlZERpc3Bs
YXlOYW1lKHRoaXMsIGNhbGxlZSgpKTsKKyAgICAgICAgICAgIHJldHVybiBnZXRDYWxjdWxhdGVk
RGlzcGxheU5hbWUodm0oKSwgY2FsbGVlKCkpOwogICAgICAgICByZXR1cm4gZW1wdHlTdHJpbmco
KTsKICAgICB9CiAKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnRlcnByZXRlci9JbnRl
cnByZXRlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2ludGVycHJl
dGVyL0ludGVycHJldGVyLmNwcAkocmV2aXNpb24gMjAxNzYwKQorKysgU291cmNlL0phdmFTY3Jp
cHRDb3JlL2ludGVycHJldGVyL0ludGVycHJldGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTA2
LDcgKzEwNiw3IEBAIFN0cmluZyBTdGFja0ZyYW1lOjpmcmllbmRseVNvdXJjZVVSTCgpIGMKICAg
ICByZXR1cm4gdHJhY2VMaW5lLmlzTnVsbCgpID8gZW1wdHlTdHJpbmcoKSA6IHRyYWNlTGluZTsK
IH0KIAotU3RyaW5nIFN0YWNrRnJhbWU6OmZyaWVuZGx5RnVuY3Rpb25OYW1lKENhbGxGcmFtZSog
Y2FsbEZyYW1lKSBjb25zdAorU3RyaW5nIFN0YWNrRnJhbWU6OmZyaWVuZGx5RnVuY3Rpb25OYW1l
KFZNJiB2bSkgY29uc3QKIHsKICAgICBTdHJpbmcgdHJhY2VMaW5lOwogICAgIEpTT2JqZWN0KiBz
dGFja0ZyYW1lQ2FsbGVlID0gY2FsbGVlLmdldCgpOwpAQCAtMTIwLDEwICsxMjAsMTAgQEAgU3Ry
aW5nIFN0YWNrRnJhbWU6OmZyaWVuZGx5RnVuY3Rpb25OYW1lKAogICAgICAgICBicmVhazsKICAg
ICBjYXNlIFN0YWNrRnJhbWVOYXRpdmVDb2RlOgogICAgICAgICBpZiAoY2FsbGVlKQotICAgICAg
ICAgICAgdHJhY2VMaW5lID0gZ2V0Q2FsY3VsYXRlZERpc3BsYXlOYW1lKGNhbGxGcmFtZSwgc3Rh
Y2tGcmFtZUNhbGxlZSkuaW1wbCgpOworICAgICAgICAgICAgdHJhY2VMaW5lID0gZ2V0Q2FsY3Vs
YXRlZERpc3BsYXlOYW1lKHZtLCBzdGFja0ZyYW1lQ2FsbGVlKS5pbXBsKCk7CiAgICAgICAgIGJy
ZWFrOwogICAgIGNhc2UgU3RhY2tGcmFtZUZ1bmN0aW9uQ29kZToKLSAgICAgICAgdHJhY2VMaW5l
ID0gZ2V0Q2FsY3VsYXRlZERpc3BsYXlOYW1lKGNhbGxGcmFtZSwgc3RhY2tGcmFtZUNhbGxlZSku
aW1wbCgpOworICAgICAgICB0cmFjZUxpbmUgPSBnZXRDYWxjdWxhdGVkRGlzcGxheU5hbWUodm0s
IHN0YWNrRnJhbWVDYWxsZWUpLmltcGwoKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBTdGFj
a0ZyYW1lR2xvYmFsQ29kZToKICAgICAgICAgdHJhY2VMaW5lID0gImdsb2JhbCBjb2RlIjsKQEAg
LTQ5NiwxMCArNDk2LDEwIEBAIHZvaWQgU3RhY2tGcmFtZTo6ZXhwcmVzc2lvbkluZm8oaW50JiBk
aXYKICAgICBkaXZvdCArPSBjaGFyYWN0ZXJPZmZzZXQ7CiB9CiAKLVN0cmluZyBTdGFja0ZyYW1l
Ojp0b1N0cmluZyhDYWxsRnJhbWUqIGNhbGxGcmFtZSkKK1N0cmluZyBTdGFja0ZyYW1lOjp0b1N0
cmluZyhWTSYgdm0pCiB7CiAgICAgU3RyaW5nQnVpbGRlciB0cmFjZUJ1aWxkOwotICAgIFN0cmlu
ZyBmdW5jdGlvbk5hbWUgPSBmcmllbmRseUZ1bmN0aW9uTmFtZShjYWxsRnJhbWUpOworICAgIFN0
cmluZyBmdW5jdGlvbk5hbWUgPSBmcmllbmRseUZ1bmN0aW9uTmFtZSh2bSk7CiAgICAgU3RyaW5n
IHNvdXJjZVVSTCA9IGZyaWVuZGx5U291cmNlVVJMKCk7CiAgICAgdHJhY2VCdWlsZC5hcHBlbmQo
ZnVuY3Rpb25OYW1lKTsKICAgICBpZiAoIXNvdXJjZVVSTC5pc0VtcHR5KCkpIHsKQEAgLTU5Myw4
ICs1OTMsOSBAQCBKU1N0cmluZyogSW50ZXJwcmV0ZXI6OnN0YWNrVHJhY2VBc1N0cmluCiB7CiAg
ICAgLy8gRklYTUU6IEpTU3RyaW5nSm9pbmVyIGNvdWxkIGJlIG1vcmUgZWZmaWNpZW50IHRoYW4g
U3RyaW5nQnVpbGRlciBoZXJlLgogICAgIFN0cmluZ0J1aWxkZXIgYnVpbGRlcjsKKyAgICBWTSYg
dm0gPSBleGVjLT52bSgpOwogICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBzdGFja1RyYWNl
LnNpemUoKTsgaSsrKSB7Ci0gICAgICAgIGJ1aWxkZXIuYXBwZW5kKFN0cmluZyhzdGFja1RyYWNl
W2ldLnRvU3RyaW5nKGV4ZWMpKSk7CisgICAgICAgIGJ1aWxkZXIuYXBwZW5kKFN0cmluZyhzdGFj
a1RyYWNlW2ldLnRvU3RyaW5nKHZtKSkpOwogICAgICAgICBpZiAoaSAhPSBzdGFja1RyYWNlLnNp
emUoKSAtIDEpCiAgICAgICAgICAgICBidWlsZGVyLmFwcGVuZCgnXG4nKTsKICAgICB9CkluZGV4
OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaW50ZXJwcmV0ZXIvSW50ZXJwcmV0ZXIuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaW50ZXJwcmV0ZXIvSW50ZXJwcmV0ZXIuaAko
cmV2aXNpb24gMjAxNzYwKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2ludGVycHJldGVyL0lu
dGVycHJldGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTk1LDkgKzk1LDkgQEAgbmFtZXNwYWNlIEpT
QyB7CiAgICAgICAgIHVuc2lnbmVkIGJ5dGVjb2RlT2Zmc2V0OwogICAgICAgICBTdHJpbmcgc291
cmNlVVJMOwogICAgICAgICBpbnRwdHJfdCBzb3VyY2VJRDsKLSAgICAgICAgSlNfRVhQT1JUX1BS
SVZBVEUgU3RyaW5nIHRvU3RyaW5nKENhbGxGcmFtZSopOworICAgICAgICBTdHJpbmcgdG9TdHJp
bmcoVk0mKTsKICAgICAgICAgU3RyaW5nIGZyaWVuZGx5U291cmNlVVJMKCkgY29uc3Q7Ci0gICAg
ICAgIFN0cmluZyBmcmllbmRseUZ1bmN0aW9uTmFtZShDYWxsRnJhbWUqKSBjb25zdDsKKyAgICAg
ICAgU3RyaW5nIGZyaWVuZGx5RnVuY3Rpb25OYW1lKFZNJikgY29uc3Q7CiAgICAgICAgIEpTX0VY
UE9SVF9QUklWQVRFIHZvaWQgY29tcHV0ZUxpbmVBbmRDb2x1bW4odW5zaWduZWQmIGxpbmUsIHVu
c2lnbmVkJiBjb2x1bW4pOwogCiAgICAgcHJpdmF0ZToKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9pbnRlcnByZXRlci9TdGFja1Zpc2l0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9pbnRlcnByZXRlci9TdGFja1Zpc2l0b3IuY3BwCShyZXZpc2lvbiAyMDE3
NjApCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaW50ZXJwcmV0ZXIvU3RhY2tWaXNpdG9yLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMjIzLDEwICsyMjMsMTAgQEAgU3RyaW5nIFN0YWNrVmlzaXRv
cjo6RnJhbWU6OmZ1bmN0aW9uTmFtZQogICAgICAgICBicmVhazsKICAgICBjYXNlIENvZGVUeXBl
OjpOYXRpdmU6CiAgICAgICAgIGlmIChjYWxsZWUpCi0gICAgICAgICAgICB0cmFjZUxpbmUgPSBn
ZXRDYWxjdWxhdGVkRGlzcGxheU5hbWUoY2FsbEZyYW1lKCksIGNhbGxlZSkuaW1wbCgpOworICAg
ICAgICAgICAgdHJhY2VMaW5lID0gZ2V0Q2FsY3VsYXRlZERpc3BsYXlOYW1lKGNhbGxGcmFtZSgp
LT52bSgpLCBjYWxsZWUpLmltcGwoKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBDb2RlVHlw
ZTo6RnVuY3Rpb246Ci0gICAgICAgIHRyYWNlTGluZSA9IGdldENhbGN1bGF0ZWREaXNwbGF5TmFt
ZShjYWxsRnJhbWUoKSwgY2FsbGVlKS5pbXBsKCk7CisgICAgICAgIHRyYWNlTGluZSA9IGdldENh
bGN1bGF0ZWREaXNwbGF5TmFtZShjYWxsRnJhbWUoKS0+dm0oKSwgY2FsbGVlKS5pbXBsKCk7CiAg
ICAgICAgIGJyZWFrOwogICAgIGNhc2UgQ29kZVR5cGU6Okdsb2JhbDoKICAgICAgICAgdHJhY2VM
aW5lID0gQVNDSUlMaXRlcmFsKCJnbG9iYWwgY29kZSIpOwpJbmRleDogU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSW50ZXJuYWxGdW5jdGlvbi5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50ZXJuYWxGdW5jdGlvbi5jcHAJKHJldmlzaW9uIDIw
MTc2MCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGVybmFsRnVuY3Rpb24u
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC02NSw5ICs2NSw5IEBAIGNvbnN0IFN0cmluZyYgSW50ZXJu
YWxGdW5jdGlvbjo6bmFtZSgpCiAgICAgcmV0dXJuIG5hbWU7CiB9CiAKLWNvbnN0IFN0cmluZyBJ
bnRlcm5hbEZ1bmN0aW9uOjpkaXNwbGF5TmFtZShFeGVjU3RhdGUqIGV4ZWMpCitjb25zdCBTdHJp
bmcgSW50ZXJuYWxGdW5jdGlvbjo6ZGlzcGxheU5hbWUoVk0mIHZtKQogewotICAgIEpTVmFsdWUg
ZGlzcGxheU5hbWUgPSBnZXREaXJlY3QoZXhlYy0+dm0oKSwgZXhlYy0+dm0oKS5wcm9wZXJ0eU5h
bWVzLT5kaXNwbGF5TmFtZSk7CisgICAgSlNWYWx1ZSBkaXNwbGF5TmFtZSA9IGdldERpcmVjdCh2
bSwgdm0ucHJvcGVydHlOYW1lcy0+ZGlzcGxheU5hbWUpOwogICAgIAogICAgIGlmIChkaXNwbGF5
TmFtZSAmJiBpc0pTU3RyaW5nKGRpc3BsYXlOYW1lKSkKICAgICAgICAgcmV0dXJuIGFzU3RyaW5n
KGRpc3BsYXlOYW1lKS0+dHJ5R2V0VmFsdWUoKTsKQEAgLTgxLDkgKzgxLDkgQEAgQ2FsbFR5cGUg
SW50ZXJuYWxGdW5jdGlvbjo6Z2V0Q2FsbERhdGEoSgogICAgIHJldHVybiBDYWxsVHlwZTo6Tm9u
ZTsKIH0KIAotY29uc3QgU3RyaW5nIEludGVybmFsRnVuY3Rpb246OmNhbGN1bGF0ZWREaXNwbGF5
TmFtZShFeGVjU3RhdGUqIGV4ZWMpCitjb25zdCBTdHJpbmcgSW50ZXJuYWxGdW5jdGlvbjo6Y2Fs
Y3VsYXRlZERpc3BsYXlOYW1lKFZNJiB2bSkKIHsKLSAgICBjb25zdCBTdHJpbmcgZXhwbGljaXRO
YW1lID0gZGlzcGxheU5hbWUoZXhlYyk7CisgICAgY29uc3QgU3RyaW5nIGV4cGxpY2l0TmFtZSA9
IGRpc3BsYXlOYW1lKHZtKTsKICAgICAKICAgICBpZiAoIWV4cGxpY2l0TmFtZS5pc0VtcHR5KCkp
CiAgICAgICAgIHJldHVybiBleHBsaWNpdE5hbWU7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9JbnRlcm5hbEZ1bmN0aW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSW50ZXJuYWxGdW5jdGlvbi5oCShyZXZpc2lvbiAyMDE3NjApCisr
KyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRlcm5hbEZ1bmN0aW9uLmgJKHdvcmtp
bmcgY29weSkKQEAgLTQxLDggKzQxLDggQEAgcHVibGljOgogICAgIEpTX0VYUE9SVF9QUklWQVRF
IHN0YXRpYyB2b2lkIHZpc2l0Q2hpbGRyZW4oSlNDZWxsKiwgU2xvdFZpc2l0b3ImKTsKIAogICAg
IEpTX0VYUE9SVF9QUklWQVRFIGNvbnN0IFN0cmluZyYgbmFtZSgpOwotICAgIGNvbnN0IFN0cmlu
ZyBkaXNwbGF5TmFtZShFeGVjU3RhdGUqKTsKLSAgICBjb25zdCBTdHJpbmcgY2FsY3VsYXRlZERp
c3BsYXlOYW1lKEV4ZWNTdGF0ZSopOworICAgIGNvbnN0IFN0cmluZyBkaXNwbGF5TmFtZShWTSYp
OworICAgIGNvbnN0IFN0cmluZyBjYWxjdWxhdGVkRGlzcGxheU5hbWUoVk0mKTsKIAogICAgIHN0
YXRpYyBTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QsIEpTVmFsdWUgcHJvdG8pCiAgICAgeyAKSW5kZXg6IFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTRnVuY3Rpb24uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTRnVuY3Rpb24uY3BwCShyZXZpc2lvbiAyMDE3NjApCisrKyBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0Z1bmN0aW9uLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMTc4LDkgKzE3OCw5IEBAIFN0cmluZyBKU0Z1bmN0aW9uOjpuYW1lKCkKICAgICByZXR1
cm4ganNFeGVjdXRhYmxlKCktPm5hbWUoKS5zdHJpbmcoKTsKIH0KIAotU3RyaW5nIEpTRnVuY3Rp
b246OmRpc3BsYXlOYW1lKEV4ZWNTdGF0ZSogZXhlYykKK1N0cmluZyBKU0Z1bmN0aW9uOjpkaXNw
bGF5TmFtZShWTSYgdm0pCiB7Ci0gICAgSlNWYWx1ZSBkaXNwbGF5TmFtZSA9IGdldERpcmVjdChl
eGVjLT52bSgpLCBleGVjLT52bSgpLnByb3BlcnR5TmFtZXMtPmRpc3BsYXlOYW1lKTsKKyAgICBK
U1ZhbHVlIGRpc3BsYXlOYW1lID0gZ2V0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5kaXNw
bGF5TmFtZSk7CiAgICAgCiAgICAgaWYgKGRpc3BsYXlOYW1lICYmIGlzSlNTdHJpbmcoZGlzcGxh
eU5hbWUpKQogICAgICAgICByZXR1cm4gYXNTdHJpbmcoZGlzcGxheU5hbWUpLT50cnlHZXRWYWx1
ZSgpOwpAQCAtMTg4LDkgKzE4OCw5IEBAIFN0cmluZyBKU0Z1bmN0aW9uOjpkaXNwbGF5TmFtZShF
eGVjU3RhdGUKICAgICByZXR1cm4gU3RyaW5nKCk7CiB9CiAKLWNvbnN0IFN0cmluZyBKU0Z1bmN0
aW9uOjpjYWxjdWxhdGVkRGlzcGxheU5hbWUoRXhlY1N0YXRlKiBleGVjKQorY29uc3QgU3RyaW5n
IEpTRnVuY3Rpb246OmNhbGN1bGF0ZWREaXNwbGF5TmFtZShWTSYgdm0pCiB7Ci0gICAgY29uc3Qg
U3RyaW5nIGV4cGxpY2l0TmFtZSA9IGRpc3BsYXlOYW1lKGV4ZWMpOworICAgIGNvbnN0IFN0cmlu
ZyBleHBsaWNpdE5hbWUgPSBkaXNwbGF5TmFtZSh2bSk7CiAgICAgCiAgICAgaWYgKCFleHBsaWNp
dE5hbWUuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm4gZXhwbGljaXROYW1lOwpAQCAtNTU2LDEy
ICs1NTYsMTIgQEAgQ29uc3RydWN0VHlwZSBKU0Z1bmN0aW9uOjpnZXRDb25zdHJ1Y3REYQogICAg
IHJldHVybiBDb25zdHJ1Y3RUeXBlOjpKUzsKIH0KIAotU3RyaW5nIGdldENhbGN1bGF0ZWREaXNw
bGF5TmFtZShDYWxsRnJhbWUqIGNhbGxGcmFtZSwgSlNPYmplY3QqIG9iamVjdCkKK1N0cmluZyBn
ZXRDYWxjdWxhdGVkRGlzcGxheU5hbWUoVk0mIHZtLCBKU09iamVjdCogb2JqZWN0KQogewogICAg
IGlmIChKU0Z1bmN0aW9uKiBmdW5jdGlvbiA9IGpzRHluYW1pY0Nhc3Q8SlNGdW5jdGlvbio+KG9i
amVjdCkpCi0gICAgICAgIHJldHVybiBmdW5jdGlvbi0+Y2FsY3VsYXRlZERpc3BsYXlOYW1lKGNh
bGxGcmFtZSk7CisgICAgICAgIHJldHVybiBmdW5jdGlvbi0+Y2FsY3VsYXRlZERpc3BsYXlOYW1l
KHZtKTsKICAgICBpZiAoSW50ZXJuYWxGdW5jdGlvbiogZnVuY3Rpb24gPSBqc0R5bmFtaWNDYXN0
PEludGVybmFsRnVuY3Rpb24qPihvYmplY3QpKQotICAgICAgICByZXR1cm4gZnVuY3Rpb24tPmNh
bGN1bGF0ZWREaXNwbGF5TmFtZShjYWxsRnJhbWUpOworICAgICAgICByZXR1cm4gZnVuY3Rpb24t
PmNhbGN1bGF0ZWREaXNwbGF5TmFtZSh2bSk7CiAgICAgcmV0dXJuIGVtcHR5U3RyaW5nKCk7CiB9
CiAKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRnVuY3Rpb24uaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0Z1bmN0aW9uLmgJKHJl
dmlzaW9uIDIwMTc2MCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRnVuY3Rp
b24uaAkod29ya2luZyBjb3B5KQpAQCAtNDksNyArNDksNyBAQCBjbGFzcyBKSVRDb21waWxlcjsK
IAogSlNfRVhQT1JUX1BSSVZBVEUgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjYWxsSG9z
dEZ1bmN0aW9uQXNDb25zdHJ1Y3RvcihFeGVjU3RhdGUqKTsKIAotSlNfRVhQT1JUX1BSSVZBVEUg
U3RyaW5nIGdldENhbGN1bGF0ZWREaXNwbGF5TmFtZShDYWxsRnJhbWUqLCBKU09iamVjdCopOwor
SlNfRVhQT1JUX1BSSVZBVEUgU3RyaW5nIGdldENhbGN1bGF0ZWREaXNwbGF5TmFtZShWTSYsIEpT
T2JqZWN0Kik7CiAKIGNsYXNzIEpTRnVuY3Rpb24gOiBwdWJsaWMgSlNDYWxsZWUgewogICAgIGZy
aWVuZCBjbGFzcyBKSVQ7CkBAIC04Miw4ICs4Miw4IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgSlNG
dW5jdGlvbiogY3JlYXRlQnVpbHRpbkZ1bmN0aW9uKFZNJiwgRnVuY3Rpb25FeGVjdXRhYmxlKiwg
SlNHbG9iYWxPYmplY3QqLCBjb25zdCBTdHJpbmcmIG5hbWUpOwogCiAgICAgSlNfRVhQT1JUX1BS
SVZBVEUgU3RyaW5nIG5hbWUoKTsKLSAgICBKU19FWFBPUlRfUFJJVkFURSBTdHJpbmcgZGlzcGxh
eU5hbWUoRXhlY1N0YXRlKik7Ci0gICAgY29uc3QgU3RyaW5nIGNhbGN1bGF0ZWREaXNwbGF5TmFt
ZShFeGVjU3RhdGUqKTsKKyAgICBKU19FWFBPUlRfUFJJVkFURSBTdHJpbmcgZGlzcGxheU5hbWUo
Vk0mKTsKKyAgICBjb25zdCBTdHJpbmcgY2FsY3VsYXRlZERpc3BsYXlOYW1lKFZNJik7CiAKICAg
ICBFeGVjdXRhYmxlQmFzZSogZXhlY3V0YWJsZSgpIGNvbnN0IHsgcmV0dXJuIG1fZXhlY3V0YWJs
ZS5nZXQoKTsgfQogCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09iamVj
dC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNPYmpl
Y3QuY3BwCShyZXZpc2lvbiAyMDE3NjApCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU09iamVjdC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTMxOSwxMCArMzE5LDExIEBAIFN0cmlu
ZyBKU09iamVjdDo6Y2FsY3VsYXRlZENsYXNzTmFtZShKU08KICAgICAgICAgICAgIGlmIChjb25z
dHJ1Y3RvclZhbHVlLmlzQ2VsbCgpKSB7CiAgICAgICAgICAgICAgICAgaWYgKEpTQ2VsbCogY29u
c3RydWN0b3JDZWxsID0gY29uc3RydWN0b3JWYWx1ZS5hc0NlbGwoKSkgewogICAgICAgICAgICAg
ICAgICAgICBpZiAoSlNPYmplY3QqIGN0b3JPYmplY3QgPSBjb25zdHJ1Y3RvckNlbGwtPmdldE9i
amVjdCgpKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBWTSYgdm0gPSBleGVjLT52bSgpOwog
ICAgICAgICAgICAgICAgICAgICAgICAgaWYgKEpTRnVuY3Rpb24qIGNvbnN0cnVjdG9yRnVuY3Rp
b24gPSBqc0R5bmFtaWNDYXN0PEpTRnVuY3Rpb24qPihjdG9yT2JqZWN0KSkKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBwcm90b3R5cGVGdW5jdGlvbk5hbWUgPSBjb25zdHJ1Y3RvckZ1bmN0
aW9uLT5jYWxjdWxhdGVkRGlzcGxheU5hbWUoZXhlYyk7CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgcHJvdG90eXBlRnVuY3Rpb25OYW1lID0gY29uc3RydWN0b3JGdW5jdGlvbi0+Y2FsY3Vs
YXRlZERpc3BsYXlOYW1lKHZtKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKElu
dGVybmFsRnVuY3Rpb24qIGNvbnN0cnVjdG9yRnVuY3Rpb24gPSBqc0R5bmFtaWNDYXN0PEludGVy
bmFsRnVuY3Rpb24qPihjdG9yT2JqZWN0KSkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBw
cm90b3R5cGVGdW5jdGlvbk5hbWUgPSBjb25zdHJ1Y3RvckZ1bmN0aW9uLT5jYWxjdWxhdGVkRGlz
cGxheU5hbWUoZXhlYyk7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdG90eXBlRnVu
Y3Rpb25OYW1lID0gY29uc3RydWN0b3JGdW5jdGlvbi0+Y2FsY3VsYXRlZERpc3BsYXlOYW1lKHZt
KTsKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAg
IH0K
</data>
<flag name="review"
          id="304622"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
      

    </bug>

</bugzilla>