<?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>205366</bug_id>
          
          <creation_ts>2019-12-17 16:43:04 -0800</creation_ts>
          <short_desc>[JSC] Memory usage statistics should be attainable without WebCore</short_desc>
          <delta_ts>2019-12-20 16:06:25 -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>JavaScriptCore</component>
          <version>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ross Kirsling">ross.kirsling</reporter>
          <assigned_to name="Ross Kirsling">ross.kirsling</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1599627</commentid>
    <comment_count>0</comment_count>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2019-12-17 16:43:04 -0800</bug_when>
    <thetext>PerformanceLogging::memoryUsageStatistics puts together some very useful information, most of which comes from vm.heap and not from WebCore itself:
https://github.com/WebKit/webkit/blob/master/Source/WebCore/page/PerformanceLogging.cpp#L54-L76

As such it would be nice to have this information available in a JSC-only context.

There are two possible approaches I can see:
1. Add methods to $vm. $vm.globalObjectCount() already exists so we could just add a few more.
2. Add a private C API (say, JSMemoryUsageStatistics under JSBasePrivate.h) which builds a JS object of this information much like the WebCore version.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1599959</commentid>
    <comment_count>1</comment_count>
      <attachid>386000</attachid>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2019-12-18 13:24:48 -0800</bug_when>
    <thetext>Created attachment 386000
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1599962</commentid>
    <comment_count>2</comment_count>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2019-12-18 13:26:47 -0800</bug_when>
    <thetext>Here&apos;s a patch for the private API approach.

If we feel this is useful enough to warrant a public API (and we&apos;re clear on how we&apos;d want the ObjC version to be), I&apos;d be happy to change it accordingly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1600831</commentid>
    <comment_count>3</comment_count>
      <attachid>386000</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2019-12-20 11:22:53 -0800</bug_when>
    <thetext>Comment on attachment 386000
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=386000&amp;action=review

&gt; Source/JavaScriptCore/API/JSBasePrivate.h:54
&gt; +@result An object containing data such as heap size, heap capacity, and object counts.

Can you put an @discussion that describes each of the properties on the returned object.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1600992</commentid>
    <comment_count>4</comment_count>
      <attachid>386271</attachid>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2019-12-20 15:47:59 -0800</bug_when>
    <thetext>Created attachment 386271
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1600999</commentid>
    <comment_count>5</comment_count>
      <attachid>386271</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-12-20 16:05:53 -0800</bug_when>
    <thetext>Comment on attachment 386271
Patch for landing

Clearing flags on attachment: 386271

Committed r253854: &lt;https://trac.webkit.org/changeset/253854&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1601000</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-12-20 16:05:55 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1601002</commentid>
    <comment_count>7</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-12-20 16:06:25 -0800</bug_when>
    <thetext>&lt;rdar://problem/58128443&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>386000</attachid>
            <date>2019-12-18 13:24:48 -0800</date>
            <delta_ts>2019-12-20 15:47:57 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-205366-20191218132448.patch</filename>
            <type>text/plain</type>
            <size>3586</size>
            <attacher name="Ross Kirsling">ross.kirsling</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUzNjkyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
ZTA5NTY0ZjcwYmZmMDYyODFmODQzZDU0OWEwZGI3YzNhYzNkYmRlLi40NTUyNzUyYjZlZWZjYzZi
YWFlY2Q1MmU1MWY2ZmIyNzlhYjMxZjY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNCBAQAorMjAxOS0xMi0xOCAgUm9zcyBLaXJzbGluZyAgPHJvc3Mua2lyc2xpbmdAc29u
eS5jb20+CisKKyAgICAgICAgW0pTQ10gTWVtb3J5IHVzYWdlIHN0YXRpc3RpY3Mgc2hvdWxkIGJl
IGF0dGFpbmFibGUgd2l0aG91dCBXZWJDb3JlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMDUzNjYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICAqIEFQSS9KU0Jhc2UuY3BwOgorICAgICAgICAoSlNHZXRNZW1v
cnlVc2FnZVN0YXRpc3RpY3MpOgorICAgICAgICAqIEFQSS9KU0Jhc2VQcml2YXRlLmg6CisKIDIw
MTktMTItMTcgIFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFwcGxlLmNvbT4KIAogICAgICAgICBb
SlNDXSA4Qml0IEpTUm9wZVN0cmluZyBjYW4gY29udGFpbiAxNkJpdCBzdHJpbmcgaW4gaXRzIHJv
cGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNCYXNlLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNCYXNlLmNwcAppbmRleCBkNDQzNzMxYzU1NWEwNGM2
NzA1OTRmOTZkZWZlM2E2OGZmNzhiMjhhLi4wODNhN2QzYjhjN2NiYmMxNDExN2EwMGQ0ZTIzODY3
Y2JjNDYxZDhmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQmFzZS5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0Jhc2UuY3BwCkBAIC0zMywxMCAr
MzMsMTIgQEAKICNpbmNsdWRlICJDb21wbGV0aW9uLmgiCiAjaW5jbHVkZSAiRXhjZXB0aW9uLmgi
CiAjaW5jbHVkZSAiR0NBY3Rpdml0eUNhbGxiYWNrLmgiCisjaW5jbHVkZSAiSWRlbnRpZmllci5o
IgogI2luY2x1ZGUgIkluaXRpYWxpemVUaHJlYWRpbmcuaCIKICNpbmNsdWRlICJKU0dsb2JhbE9i
amVjdC5oIgogI2luY2x1ZGUgIkpTTG9jay5oIgogI2luY2x1ZGUgIkpTT2JqZWN0LmgiCisjaW5j
bHVkZSAiT2JqZWN0Q29uc3RydWN0b3IuaCIKICNpbmNsdWRlICJPcGFxdWVKU1N0cmluZy5oIgog
I2luY2x1ZGUgIkpTQ0lubGluZXMuaCIKICNpbmNsdWRlICJTb3VyY2VDb2RlLmgiCkBAIC0xODcs
NiArMTg5LDI5IEBAIHZvaWQgSlNEaXNhYmxlR0NUaW1lcih2b2lkKQogICAgIEdDQWN0aXZpdHlD
YWxsYmFjazo6c19zaG91bGRDcmVhdGVHQ1RpbWVyID0gZmFsc2U7CiB9CiAKK0pTT2JqZWN0UmVm
IEpTR2V0TWVtb3J5VXNhZ2VTdGF0aXN0aWNzKEpTQ29udGV4dFJlZiBjdHgpCit7CisgICAgaWYg
KCFjdHgpIHsKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIHJldHVybiAw
OworICAgIH0KKworICAgIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QgPSB0b0pTKGN0eCk7
CisgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOworICAgIEpTTG9ja0hvbGRlciBsb2Nr
ZXIodm0pOworCisgICAgSlNPYmplY3QqIG9iamVjdCA9IGNvbnN0cnVjdEVtcHR5T2JqZWN0KGds
b2JhbE9iamVjdCk7CisgICAgb2JqZWN0LT5wdXREaXJlY3Qodm0sIElkZW50aWZpZXI6OmZyb21T
dHJpbmcodm0sICJoZWFwU2l6ZSIpLCBqc051bWJlcih2bS5oZWFwLnNpemUoKSkpOworICAgIG9i
amVjdC0+cHV0RGlyZWN0KHZtLCBJZGVudGlmaWVyOjpmcm9tU3RyaW5nKHZtLCAiaGVhcENhcGFj
aXR5IiksIGpzTnVtYmVyKHZtLmhlYXAuY2FwYWNpdHkoKSkpOworICAgIG9iamVjdC0+cHV0RGly
ZWN0KHZtLCBJZGVudGlmaWVyOjpmcm9tU3RyaW5nKHZtLCAiZXh0cmFNZW1vcnlTaXplIiksIGpz
TnVtYmVyKHZtLmhlYXAuZXh0cmFNZW1vcnlTaXplKCkpKTsKKyAgICBvYmplY3QtPnB1dERpcmVj
dCh2bSwgSWRlbnRpZmllcjo6ZnJvbVN0cmluZyh2bSwgIm9iamVjdENvdW50IiksIGpzTnVtYmVy
KHZtLmhlYXAub2JqZWN0Q291bnQoKSkpOworICAgIG9iamVjdC0+cHV0RGlyZWN0KHZtLCBJZGVu
dGlmaWVyOjpmcm9tU3RyaW5nKHZtLCAicHJvdGVjdGVkT2JqZWN0Q291bnQiKSwganNOdW1iZXIo
dm0uaGVhcC5wcm90ZWN0ZWRPYmplY3RDb3VudCgpKSk7CisgICAgb2JqZWN0LT5wdXREaXJlY3Qo
dm0sIElkZW50aWZpZXI6OmZyb21TdHJpbmcodm0sICJnbG9iYWxPYmplY3RDb3VudCIpLCBqc051
bWJlcih2bS5oZWFwLmdsb2JhbE9iamVjdENvdW50KCkpKTsKKyAgICBvYmplY3QtPnB1dERpcmVj
dCh2bSwgSWRlbnRpZmllcjo6ZnJvbVN0cmluZyh2bSwgInByb3RlY3RlZEdsb2JhbE9iamVjdENv
dW50IiksIGpzTnVtYmVyKHZtLmhlYXAucHJvdGVjdGVkR2xvYmFsT2JqZWN0Q291bnQoKSkpOwor
CisgICAgcmV0dXJuIHRvUmVmKG9iamVjdCk7Cit9CisKICNpZiBQTEFURk9STShJT1NfRkFNSUxZ
KSAmJiBUQVJHRVRfT1NfSU9TCiAvLyBGSVhNRTogRXhwb3NlIHN5bWJvbHMgdG8gdGVsbCBkeWxk
IHdoZXJlIHRvIGZpbmQgSmF2YVNjcmlwdENvcmUgb24gb2xkZXIgdmVyc2lvbnMgb2YKIC8vIGlP
UyAoPCA3LjApLiBXZSBzaG91bGQgcmVtb3ZlIHRoZXNlIHN5bWJvbHMgb25jZSB3ZSBubyBsb25n
ZXIgbmVlZCB0byBzdXBwb3J0IHN1Y2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9BUEkvSlNCYXNlUHJpdmF0ZS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0Jhc2VQ
cml2YXRlLmgKaW5kZXggMmZjOTE2YjcwYTIzZjI1MGI0YjgyN2EzYWJhOGQ1MDlkODEyOTA0ZS4u
ZTIxOTRjNzRkZjg4OTk5MTg0ZjQ2MDkwZmQ4Mzk5MWVjMzY5NzlkYSAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0Jhc2VQcml2YXRlLmgKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL0FQSS9KU0Jhc2VQcml2YXRlLmgKQEAgLTQ3LDYgKzQ3LDE0IEBAIEpTX0VYUE9S
VCB2b2lkIEpTUmVwb3J0RXh0cmFNZW1vcnlDb3N0KEpTQ29udGV4dFJlZiBjdHgsIHNpemVfdCBz
aXplKSBKU0NfQVBJX0FWCiAKIEpTX0VYUE9SVCB2b2lkIEpTRGlzYWJsZUdDVGltZXIodm9pZCk7
CiAKKy8qIQorQGZ1bmN0aW9uCitAYWJzdHJhY3QgUHJvZHVjZXMgYW4gb2JqZWN0IHdpdGggdmFy
aW91cyBzdGF0aXN0aWNzIGFib3V0IGN1cnJlbnQgbWVtb3J5IHVzYWdlLgorQHBhcmFtIGN0eCBU
aGUgZXhlY3V0aW9uIGNvbnRleHQgdG8gdXNlLgorQHJlc3VsdCBBbiBvYmplY3QgY29udGFpbmlu
ZyBkYXRhIHN1Y2ggYXMgaGVhcCBzaXplLCBoZWFwIGNhcGFjaXR5LCBhbmQgb2JqZWN0IGNvdW50
cy4KKyovCitKU19FWFBPUlQgSlNPYmplY3RSZWYgSlNHZXRNZW1vcnlVc2FnZVN0YXRpc3RpY3Mo
SlNDb250ZXh0UmVmIGN0eCk7CisKICNpZmRlZiBfX2NwbHVzcGx1cwogfQogI2VuZGlmCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>386271</attachid>
            <date>2019-12-20 15:47:59 -0800</date>
            <delta_ts>2019-12-20 16:05:53 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-205366-20191220154758.patch</filename>
            <type>text/plain</type>
            <size>4140</size>
            <attacher name="Ross Kirsling">ross.kirsling</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUzODQ0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA5
MjQ3MmNjNGJlMzExMzY2MDhjY2U3NzRlNWVlYjkxY2EwMDM4Y2Y1Li40OTk3MWZlZmI0MDI5NjFj
ZTFiNTUwNDM2MzUzNWFhYzEzZDk3YTQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNSBAQAorMjAxOS0xMi0yMCAgUm9zcyBLaXJzbGluZyAgPHJvc3Mua2lyc2xpbmdAc29u
eS5jb20+CisKKyAgICAgICAgW0pTQ10gTWVtb3J5IHVzYWdlIHN0YXRpc3RpY3Mgc2hvdWxkIGJl
IGF0dGFpbmFibGUgd2l0aG91dCBXZWJDb3JlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMDUzNjYKKworICAgICAgICBSZXZpZXdlZCBieSBLZWl0aCBN
aWxsZXIuCisKKyAgICAgICAgKiBBUEkvSlNCYXNlLmNwcDoKKyAgICAgICAgKEpTR2V0TWVtb3J5
VXNhZ2VTdGF0aXN0aWNzKToKKyAgICAgICAgKiBBUEkvSlNCYXNlUHJpdmF0ZS5oOgorICAgICAg
ICBBZGQgYSBwcml2YXRlIEpTQyBBUEkgZXhwb3NpbmcgdGhlIHNhbWUgSGVhcCBzdGF0cyBhcyBX
ZWJDb3JlJ3MgUGVyZm9ybWFuY2VMb2dnaW5nOjptZW1vcnlVc2FnZVN0YXRpc3RpY3MuCisKIDIw
MTktMTItMTkgIFNhYW0gQmFyYXRpICA8c2JhcmF0aUBhcHBsZS5jb20+CiAKICAgICAgICAgRG9u
J3QgY2FjaGUgc2VsZiBjdXN0b21zIG9uIGRpY3Rpb25hcmllcwpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL0FQSS9KU0Jhc2UuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQ
SS9KU0Jhc2UuY3BwCmluZGV4IGQ0NDM3MzFjNTU1YTA0YzY3MDU5NGY5NmRlZmUzYTY4ZmY3OGIy
OGEuLjA4M2E3ZDNiOGM3Y2JiYzE0MTE3YTAwZDRlMjM4NjdjYmM0NjFkOGYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNCYXNlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvQVBJL0pTQmFzZS5jcHAKQEAgLTMzLDEwICszMywxMiBAQAogI2luY2x1ZGUgIkNv
bXBsZXRpb24uaCIKICNpbmNsdWRlICJFeGNlcHRpb24uaCIKICNpbmNsdWRlICJHQ0FjdGl2aXR5
Q2FsbGJhY2suaCIKKyNpbmNsdWRlICJJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiSW5pdGlhbGl6
ZVRocmVhZGluZy5oIgogI2luY2x1ZGUgIkpTR2xvYmFsT2JqZWN0LmgiCiAjaW5jbHVkZSAiSlNM
b2NrLmgiCiAjaW5jbHVkZSAiSlNPYmplY3QuaCIKKyNpbmNsdWRlICJPYmplY3RDb25zdHJ1Y3Rv
ci5oIgogI2luY2x1ZGUgIk9wYXF1ZUpTU3RyaW5nLmgiCiAjaW5jbHVkZSAiSlNDSW5saW5lcy5o
IgogI2luY2x1ZGUgIlNvdXJjZUNvZGUuaCIKQEAgLTE4Nyw2ICsxODksMjkgQEAgdm9pZCBKU0Rp
c2FibGVHQ1RpbWVyKHZvaWQpCiAgICAgR0NBY3Rpdml0eUNhbGxiYWNrOjpzX3Nob3VsZENyZWF0
ZUdDVGltZXIgPSBmYWxzZTsKIH0KIAorSlNPYmplY3RSZWYgSlNHZXRNZW1vcnlVc2FnZVN0YXRp
c3RpY3MoSlNDb250ZXh0UmVmIGN0eCkKK3sKKyAgICBpZiAoIWN0eCkgeworICAgICAgICBBU1NF
UlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgSlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCA9IHRvSlMoY3R4KTsKKyAgICBWTSYgdm0gPSBnbG9iYWxP
YmplY3QtPnZtKCk7CisgICAgSlNMb2NrSG9sZGVyIGxvY2tlcih2bSk7CisKKyAgICBKU09iamVj
dCogb2JqZWN0ID0gY29uc3RydWN0RW1wdHlPYmplY3QoZ2xvYmFsT2JqZWN0KTsKKyAgICBvYmpl
Y3QtPnB1dERpcmVjdCh2bSwgSWRlbnRpZmllcjo6ZnJvbVN0cmluZyh2bSwgImhlYXBTaXplIiks
IGpzTnVtYmVyKHZtLmhlYXAuc2l6ZSgpKSk7CisgICAgb2JqZWN0LT5wdXREaXJlY3Qodm0sIElk
ZW50aWZpZXI6OmZyb21TdHJpbmcodm0sICJoZWFwQ2FwYWNpdHkiKSwganNOdW1iZXIodm0uaGVh
cC5jYXBhY2l0eSgpKSk7CisgICAgb2JqZWN0LT5wdXREaXJlY3Qodm0sIElkZW50aWZpZXI6OmZy
b21TdHJpbmcodm0sICJleHRyYU1lbW9yeVNpemUiKSwganNOdW1iZXIodm0uaGVhcC5leHRyYU1l
bW9yeVNpemUoKSkpOworICAgIG9iamVjdC0+cHV0RGlyZWN0KHZtLCBJZGVudGlmaWVyOjpmcm9t
U3RyaW5nKHZtLCAib2JqZWN0Q291bnQiKSwganNOdW1iZXIodm0uaGVhcC5vYmplY3RDb3VudCgp
KSk7CisgICAgb2JqZWN0LT5wdXREaXJlY3Qodm0sIElkZW50aWZpZXI6OmZyb21TdHJpbmcodm0s
ICJwcm90ZWN0ZWRPYmplY3RDb3VudCIpLCBqc051bWJlcih2bS5oZWFwLnByb3RlY3RlZE9iamVj
dENvdW50KCkpKTsKKyAgICBvYmplY3QtPnB1dERpcmVjdCh2bSwgSWRlbnRpZmllcjo6ZnJvbVN0
cmluZyh2bSwgImdsb2JhbE9iamVjdENvdW50IiksIGpzTnVtYmVyKHZtLmhlYXAuZ2xvYmFsT2Jq
ZWN0Q291bnQoKSkpOworICAgIG9iamVjdC0+cHV0RGlyZWN0KHZtLCBJZGVudGlmaWVyOjpmcm9t
U3RyaW5nKHZtLCAicHJvdGVjdGVkR2xvYmFsT2JqZWN0Q291bnQiKSwganNOdW1iZXIodm0uaGVh
cC5wcm90ZWN0ZWRHbG9iYWxPYmplY3RDb3VudCgpKSk7CisKKyAgICByZXR1cm4gdG9SZWYob2Jq
ZWN0KTsKK30KKwogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpICYmIFRBUkdFVF9PU19JT1MKIC8v
IEZJWE1FOiBFeHBvc2Ugc3ltYm9scyB0byB0ZWxsIGR5bGQgd2hlcmUgdG8gZmluZCBKYXZhU2Ny
aXB0Q29yZSBvbiBvbGRlciB2ZXJzaW9ucyBvZgogLy8gaU9TICg8IDcuMCkuIFdlIHNob3VsZCBy
ZW1vdmUgdGhlc2Ugc3ltYm9scyBvbmNlIHdlIG5vIGxvbmdlciBuZWVkIHRvIHN1cHBvcnQgc3Vj
aApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0Jhc2VQcml2YXRlLmgg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQmFzZVByaXZhdGUuaAppbmRleCAyZmM5MTZi
NzBhMjNmMjUwYjRiODI3YTNhYmE4ZDUwOWQ4MTI5MDRlLi4xNTBmNDVlMDU4MGZjZTM5ODRhNTJi
YWVhZWRjODQ1NGJmYTlkNGQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJ
L0pTQmFzZVByaXZhdGUuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQmFzZVBy
aXZhdGUuaApAQCAtNDcsNiArNDcsMjIgQEAgSlNfRVhQT1JUIHZvaWQgSlNSZXBvcnRFeHRyYU1l
bW9yeUNvc3QoSlNDb250ZXh0UmVmIGN0eCwgc2l6ZV90IHNpemUpIEpTQ19BUElfQVYKIAogSlNf
RVhQT1JUIHZvaWQgSlNEaXNhYmxlR0NUaW1lcih2b2lkKTsKIAorLyohCitAZnVuY3Rpb24KK0Bh
YnN0cmFjdCBQcm9kdWNlcyBhbiBvYmplY3Qgd2l0aCB2YXJpb3VzIHN0YXRpc3RpY3MgYWJvdXQg
Y3VycmVudCBtZW1vcnkgdXNhZ2UuCitAcGFyYW0gY3R4IFRoZSBleGVjdXRpb24gY29udGV4dCB0
byB1c2UuCitAcmVzdWx0IEFuIG9iamVjdCBjb250YWluaW5nIEdDIGhlYXAgc3RhdHVzIGRhdGEu
CitAZGlzY3Vzc2lvbiBTcGVjaWZpY2FsbHksIHRoZSByZXN1bHQgb2JqZWN0IGhhcyB0aGUgZm9s
bG93aW5nIGludGVnZXItdmFsdWVkIGZpZWxkczoKKyBoZWFwU2l6ZTogY3VycmVudCBzaXplIG9m
IGhlYXAKKyBoZWFwQ2FwYWNpdHk6IGN1cnJlbnQgY2FwYWNpdHkgb2YgaGVhcAorIGV4dHJhTWVt
b3J5U2l6ZTogYW1vdW50IG9mIG5vbi1HQyBtZW1vcnkgcmVmZXJlbmNlZCBieSBHQyBvYmplY3Rz
IChpbmNsdWRlZCBpbiBoZWFwIHNpemUgLyBjYXBhY2l0eSkKKyBvYmplY3RDb3VudDogY3VycmVu
dCBjb3VudCBvZiBHQyBvYmplY3RzCisgcHJvdGVjdGVkT2JqZWN0Q291bnQ6IGN1cnJlbnQgY291
bnQgb2YgcHJvdGVjdGVkIEdDIG9iamVjdHMKKyBnbG9iYWxPYmplY3RDb3VudDogY3VycmVudCBj
b3VudCBvZiBnbG9iYWwgR0Mgb2JqZWN0cworIHByb3RlY3RlZEdsb2JhbE9iamVjdENvdW50OiBj
dXJyZW50IGNvdW50IG9mIHByb3RlY3RlZCBnbG9iYWwgR0Mgb2JqZWN0cworKi8KK0pTX0VYUE9S
VCBKU09iamVjdFJlZiBKU0dldE1lbW9yeVVzYWdlU3RhdGlzdGljcyhKU0NvbnRleHRSZWYgY3R4
KTsKKwogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CiAjZW5kaWYK
</data>

          </attachment>
      

    </bug>

</bugzilla>