<?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>7072</bug_id>
          
          <creation_ts>2006-02-04 14:58:55 -0800</creation_ts>
          <short_desc>Update JavaScriptCore, WebCore and WebKit code for JS GC statistics</short_desc>
          <delta_ts>2006-02-04 16:18:30 -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>WebKit API</component>
          <version>420+</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</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="Maciej Stachowiak">mjs</reporter>
          <assigned_to name="Maciej Stachowiak">mjs</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>31361</commentid>
    <comment_count>0</comment_count>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2006-02-04 14:58:55 -0800</bug_when>
    <thetext>I improved a couple of things in the code to get JavaScript garbage collector statistics via WebKit SPI:

1) I changed the code to use HashCountedSet instead of CFSet at the low levels.
2) I updated the SPI and internal method names to better reflect how the collector works these days (but old SPI is left for compatibility)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>31362</commentid>
    <comment_count>1</comment_count>
      <attachid>6253</attachid>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2006-02-04 15:10:22 -0800</bug_when>
    <thetext>Created attachment 6253
make JS statistics code portable</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>31369</commentid>
    <comment_count>2</comment_count>
      <attachid>6253</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2006-02-04 16:06:00 -0800</bug_when>
    <thetext>Comment on attachment 6253
make JS statistics code portable

javaScriptRootObjecTypeCounts is missing a &quot;t&quot;

Otherwise, r=me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>31374</commentid>
    <comment_count>3</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2006-02-04 16:18:30 -0800</bug_when>
    <thetext>Maciej landed this earlier (with the typo!).</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>6253</attachid>
            <date>2006-02-04 15:10:22 -0800</date>
            <delta_ts>2006-02-04 16:06:00 -0800</delta_ts>
            <desc>make JS statistics code portable</desc>
            <filename>js-statistics.patch.txt</filename>
            <type>text/plain</type>
            <size>11087</size>
            <attacher name="Maciej Stachowiak">mjs</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL2tqcy9ub2Rlcy5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gSmF2YVNj
cmlwdENvcmUva2pzL25vZGVzLmNwcAkocmV2aXNpb24gMTI1NDEpCisrKyBKYXZhU2NyaXB0Q29y
ZS9ranMvbm9kZXMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02NCw3ICs2NCw3IEBAIHVzaW5nIG5h
bWVzcGFjZSBLSlM7CiAgICAgZXhlYy0+Y2xlYXJFeGNlcHRpb24oKTsgXAogICAgIHJldHVybiBD
b21wbGV0aW9uKFRocm93LCBleCk7IFwKICAgfSBcCi0gIGlmIChDb2xsZWN0b3I6Om91dE9mTWVt
b3J5KCkpIFwKKyAgaWYgKENvbGxlY3Rvcjo6aXNPdXRPZk1lbW9yeSgpKSBcCiAgICAgcmV0dXJu
IENvbXBsZXRpb24oVGhyb3csIEVycm9yOjpjcmVhdGUoZXhlYywgR2VuZXJhbEVycm9yLCAiT3V0
IG9mIG1lbW9yeSIpKTsKIAogI2RlZmluZSBLSlNfQ0hFQ0tFWENFUFRJT05WQUxVRSBcCkBAIC03
Miw3ICs3Miw3IEBAIHVzaW5nIG5hbWVzcGFjZSBLSlM7CiAgICAgc2V0RXhjZXB0aW9uRGV0YWls
c0lmTmVlZGVkKGV4ZWMpOyBcCiAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7IFwKICAgfSBcCi0g
IGlmIChDb2xsZWN0b3I6Om91dE9mTWVtb3J5KCkpIFwKKyAgaWYgKENvbGxlY3Rvcjo6aXNPdXRP
Zk1lbW9yeSgpKSBcCiAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7IC8vIHdpbGwgYmUgcGlja2Vk
IHVwIGJ5IEtKU19DSEVDS0VYQ0VQVElPTgogCiAjZGVmaW5lIEtKU19DSEVDS0VYQ0VQVElPTkxJ
U1QgXApAQCAtODAsNyArODAsNyBAQCB1c2luZyBuYW1lc3BhY2UgS0pTOwogICAgIHNldEV4Y2Vw
dGlvbkRldGFpbHNJZk5lZWRlZChleGVjKTsgXAogICAgIHJldHVybiBMaXN0KCk7IFwKICAgfSBc
Ci0gIGlmIChDb2xsZWN0b3I6Om91dE9mTWVtb3J5KCkpIFwKKyAgaWYgKENvbGxlY3Rvcjo6aXNP
dXRPZk1lbW9yeSgpKSBcCiAgICAgcmV0dXJuIExpc3QoKTsgLy8gd2lsbCBiZSBwaWNrZWQgdXAg
YnkgS0pTX0NIRUNLRVhDRVBUSU9OCiAKIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LSBOb2RlIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkluZGV4OiBK
YXZhU2NyaXB0Q29yZS9ranMvY29sbGVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9ranMvY29sbGVjdG9yLmNwcAkocmV2aXNpb24gMTI1NDEpCisrKyBKYXZhU2NyaXB0Q29y
ZS9ranMvY29sbGVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMSw0ICsxLDQgQEAKLS8vIC0q
LSBjLWJhc2ljLW9mZnNldDogMiAtKi0KKy8vIC0qLSBtb2RlOiBjKys7IGMtYmFzaWMtb2Zmc2V0
OiA0IC0qLQogLyoKICAqICBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgS0RFIGxpYnJhcmllcwog
ICogIENvcHlyaWdodCAoQykgMjAwMyBBcHBsZSBDb21wdXRlciwgSW5jLgpAQCAtMzQsNyArMzQs
NiBAQAogCiAjaWYgX19BUFBMRV9fCiAKLSNpbmNsdWRlIDxDb3JlRm91bmRhdGlvbi9Db3JlRm91
bmRhdGlvbi5oPgogI2luY2x1ZGUgPHB0aHJlYWQuaD4KICNpbmNsdWRlIDxtYWNoL21hY2hfcG9y
dC5oPgogI2luY2x1ZGUgPG1hY2gvdGFzay5oPgpAQCAtNTk2LDE5ICs1OTUsMTIgQEAgc2l6ZV90
IENvbGxlY3Rvcjo6bnVtSW50ZXJwcmV0ZXJzKCkKICAgcmV0dXJuIGNvdW50OwogfQogCi1zaXpl
X3QgQ29sbGVjdG9yOjpudW1HQ05vdEFsbG93ZWRPYmplY3RzKCkKLXsKLSAgcmV0dXJuIDA7Ci19
Ci0KLXNpemVfdCBDb2xsZWN0b3I6Om51bVJlZmVyZW5jZWRPYmplY3RzKCkKK3NpemVfdCBDb2xs
ZWN0b3I6Om51bVByb3RlY3RlZE9iamVjdHMoKQogewogICByZXR1cm4gcHJvdGVjdGVkVmFsdWVz
KCkuc2l6ZSgpOwogfQogCi0jaWYgX19BUFBMRV9fCi0KLXN0YXRpYyBjb25zdCBjaGFyICpjbGFz
c05hbWUoSlNDZWxsICp2YWwpCitzdGF0aWMgY29uc3QgY2hhciAqdHlwZU5hbWUoSlNDZWxsICp2
YWwpCiB7CiAgIGNvbnN0IGNoYXIgKm5hbWUgPSAiPz8/IjsKICAgc3dpdGNoICh2YWwtPnR5cGUo
KSkgewpAQCAtNjQxLDIzICs2MzMsMTYgQEAgc3RhdGljIGNvbnN0IGNoYXIgKmNsYXNzTmFtZShK
U0NlbGwgKnZhbAogICByZXR1cm4gbmFtZTsKIH0KIAotY29uc3Qgdm9pZCAqQ29sbGVjdG9yOjpy
b290T2JqZWN0Q2xhc3NlcygpCitIYXNoQ291bnRlZFNldDxjb25zdCBjaGFyKj4qIENvbGxlY3Rv
cjo6cm9vdE9iamVjdFR5cGVDb3VudHMoKQogewotICAvLyBGSVhNRTogdGhpcyBzaG91bGQgYmUg
YSBIYXNoU2V0IChvciBtYXliZSBldmVuIENvdW50ZWRIYXNoU2V0KQotICBDRk11dGFibGVTZXRS
ZWYgY2xhc3NlcyA9IENGU2V0Q3JlYXRlTXV0YWJsZShOVUxMLCAwLCAma0NGVHlwZVNldENhbGxC
YWNrcyk7CisgICAgSGFzaENvdW50ZWRTZXQ8Y29uc3QgY2hhcio+KiBjb3VudHMgPSBuZXcgSGFz
aENvdW50ZWRTZXQ8Y29uc3QgY2hhcio+OwogCi0gIFByb3RlY3RDb3VudHMmIHB2ID0gcHJvdGVj
dGVkVmFsdWVzKCk7Ci0gIFByb3RlY3RDb3VudHM6Oml0ZXJhdG9yIGVuZCA9IHB2LmVuZCgpOwot
ICBmb3IgKFByb3RlY3RDb3VudHM6Oml0ZXJhdG9yIGl0ID0gcHYuYmVnaW4oKTsgaXQgIT0gZW5k
OyArK2l0KSB7Ci0gICAgSlNDZWxsICp2YWwgPSBpdC0+Zmlyc3Q7Ci0gICAgQ0ZTdHJpbmdSZWYg
bmFtZSA9IENGU3RyaW5nQ3JlYXRlV2l0aENTdHJpbmcoTlVMTCwgY2xhc3NOYW1lKHZhbCksIGtD
RlN0cmluZ0VuY29kaW5nQVNDSUkpOwotICAgIENGU2V0QWRkVmFsdWUoY2xhc3NlcywgbmFtZSk7
Ci0gICAgQ0ZSZWxlYXNlKG5hbWUpOwotICB9CisgICAgUHJvdGVjdENvdW50cyYgcHYgPSBwcm90
ZWN0ZWRWYWx1ZXMoKTsKKyAgICBQcm90ZWN0Q291bnRzOjppdGVyYXRvciBlbmQgPSBwdi5lbmQo
KTsKKyAgICBmb3IgKFByb3RlY3RDb3VudHM6Oml0ZXJhdG9yIGl0ID0gcHYuYmVnaW4oKTsgaXQg
IT0gZW5kOyArK2l0KQorICAgICAgICBjb3VudHMtPmFkZCh0eXBlTmFtZShpdC0+Zmlyc3QpKTsK
IAotICByZXR1cm4gY2xhc3NlczsKKyAgICByZXR1cm4gY291bnRzOwogfQogCi0jZW5kaWYKLQog
fSAvLyBuYW1lc3BhY2UgS0pTCkluZGV4OiBKYXZhU2NyaXB0Q29yZS9ranMvY29sbGVjdG9yLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gSmF2YVNjcmlwdENvcmUva2pzL2NvbGxlY3Rvci5oCShyZXZpc2lvbiAx
MjU0MSkKKysrIEphdmFTY3JpcHRDb3JlL2tqcy9jb2xsZWN0b3IuaAkod29ya2luZyBjb3B5KQpA
QCAtMjUsNiArMjUsNyBAQAogI2RlZmluZSBfS0pTQ09MTEVDVE9SX0hfCiAKICNpbmNsdWRlICJ2
YWx1ZS5oIgorI2luY2x1ZGUgPGt4bWxjb3JlL0hhc2hDb3VudGVkU2V0Lmg+CiAKICNkZWZpbmUg
S0pTX01FTV9MSU1JVCA1MDAwMDAKIApAQCAtMzcsMjQgKzM4LDExIEBAIG5hbWVzcGFjZSBLSlMg
ewogICAgIC8vIGRpc2FsbG93IGRpcmVjdCBjb25zdHJ1Y3Rpb24vZGVzdHJ1Y3Rpb24KICAgICBD
b2xsZWN0b3IoKTsKICAgcHVibGljOgotICAgIC8qKgotICAgICAqIFJlZ2lzdGVyIGFuIG9iamVj
dCB3aXRoIHRoZSBjb2xsZWN0b3IuIFRoZSBmb2xsb3dpbmcgYXNzdW1wdGlvbnMgYXJlCi0gICAg
ICogbWFkZToKLSAgICAgKiBAbGkgdGhlIG9wZXJhdG9yIG5ldygpIG9mIHRoZSBvYmplY3QgY2xh
c3MgaXMgb3ZlcmxvYWRlZC4KLSAgICAgKiBAbGkgb3BlcmF0b3IgZGVsZXRlKCkgaGFzIGJlZW4g
b3ZlcmxvYWRlZCBhcyB3ZWxsIGFuZCBkb2VzIG5vdCBmcmVlCi0gICAgICogdGhlIG1lbW9yeSBv
biBpdHMgb3duLgotICAgICAqCi0gICAgICogQHBhcmFtIHMgU2l6ZSBvZiB0aGUgbWVtb3J5IHRv
IGJlIHJlZ2lzdGVyZWQuCi0gICAgICogQHJldHVybiBBIHBvaW50ZXIgdG8gdGhlIGFsbG9jYXRl
ZCBtZW1vcnkuCi0gICAgICovCiAgICAgc3RhdGljIHZvaWQqIGFsbG9jYXRlKHNpemVfdCBzKTsK
LSAgICAvKioKLSAgICAgKiBSdW4gdGhlIGdhcmJhZ2UgY29sbGVjdGlvbi4gVGhpcyBpbnZvbHZl
cyBjYWxsaW5nIHRoZSBkZWxldGUgb3BlcmF0b3IKLSAgICAgKiBvbiBlYWNoIG9iamVjdCBhbmQg
ZnJlZWluZyB0aGUgdXNlZCBtZW1vcnkuCi0gICAgICovCiAgICAgc3RhdGljIGJvb2wgY29sbGVj
dCgpOworCiAgICAgc3RhdGljIHNpemVfdCBzaXplKCk7Ci0gICAgc3RhdGljIGJvb2wgb3V0T2ZN
ZW1vcnkoKSB7IHJldHVybiBtZW1vcnlGdWxsOyB9CisgICAgc3RhdGljIGJvb2wgaXNPdXRPZk1l
bW9yeSgpIHsgcmV0dXJuIG1lbW9yeUZ1bGw7IH0KIAogI2lmZGVmIEtKU19ERUJVR19NRU0KICAg
ICAvKioKQEAgLTY3LDkgKzU1LDggQEAgbmFtZXNwYWNlIEtKUyB7CiAgICAgc3RhdGljIHZvaWQg
dW5wcm90ZWN0KEpTVmFsdWUgKik7CiAKICAgICBzdGF0aWMgc2l6ZV90IG51bUludGVycHJldGVy
cygpOwotICAgIHN0YXRpYyBzaXplX3QgbnVtR0NOb3RBbGxvd2VkT2JqZWN0cygpOwotICAgIHN0
YXRpYyBzaXplX3QgbnVtUmVmZXJlbmNlZE9iamVjdHMoKTsKLSAgICBzdGF0aWMgY29uc3Qgdm9p
ZCAqcm9vdE9iamVjdENsYXNzZXMoKTsgLy8gYWN0dWFsbHkgcmV0dXJucyBDRlNldFJlZgorICAg
IHN0YXRpYyBzaXplX3QgbnVtUHJvdGVjdGVkT2JqZWN0cygpOworICAgIHN0YXRpYyBIYXNoQ291
bnRlZFNldDxjb25zdCBjaGFyKj4qIHJvb3RPYmplY3RUeXBlQ291bnRzKCk7CiAKICAgICBjbGFz
cyBUaHJlYWQ7CiAgICAgc3RhdGljIHZvaWQgcmVnaXN0ZXJUaHJlYWQoKTsKSW5kZXg6IEphdmFT
Y3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0Q29yZS9DaGFuZ2VM
b2cJKHJldmlzaW9uIDEyNTU3KQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDMgKzEsMjAgQEAKKzIwMDYtMDItMDQgIE1hY2llaiBTdGFjaG93aWFrICA8
bWpzQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKyAg
ICAgICAgCisgICAgICAgIC0gY2hhbmdlIEphdmFTY3JpcHQgY29sbGVjdG9yIHN0YXRpc3RpY3Mg
Y2FsbHMgdG8gdXNlIEhhc2hDb3VudGVkU2V0IGluc3RlYWQKKyAgICAgICAgb2YgQ0ZTZXQ7IG90
aGVyIG1pc2MgY2xlYW51cAorICAgICAgICBodHRwOi8vYnVnemlsbGEub3BlbmRhcndpbi5vcmcv
c2hvd19idWcuY2dpP2lkPTcwNzIKKyAgICAgICAgCisgICAgICAgICoga2pzL2NvbGxlY3Rvci5j
cHA6CisgICAgICAgIChLSlM6OkNvbGxlY3Rvcjo6bnVtUHJvdGVjdGVkT2JqZWN0cyk6IHJlbmFt
ZWQgZnJvbSBudW1SZWZlcmVuY2VkT2JqZWN0cworICAgICAgICAoS0pTOjp0eXBlTmFtZSk6Cisg
ICAgICAgIChLSlM6OkNvbGxlY3Rvcjo6cm9vdE9iamVjdFR5cGVDb3VudHMpOiByZW5hbWVkIGZy
b20gcm9vdE9iamVjdENsYXNzZXMsCisgICAgICAgIHVzZSBIYXNoU2V0CisgICAgICAgICoga2pz
L2NvbGxlY3Rvci5oOgorICAgICAgICAoS0pTOjpDb2xsZWN0b3I6OmlzT3V0T2ZNZW1vcnkpOiBS
ZW5hbWVkIGZyb20gb3V0T2ZNZW1vcnkuCisgICAgICAgICoga2pzL25vZGVzLmNwcDoKKwogMjAw
Ni0wMi0wMyAgVGltb3RoeSBIYXRjaGVyICA8dGltb3RoeUBhcHBsZS5jb20+CiAKICAgICAgICAg
UmV2aWV3ZWQgYnkgSnVzdGluLgpJbmRleDogV2ViS2l0L0NoYW5nZUxvZwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBXZWJLaXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAxMjU1OCkKKysrIFdlYktpdC9DaGFuZ2VMb2cJ
KHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxOSBAQAorMjAwNi0wMi0wNCAgTWFjaWVqIFN0YWNo
b3dpYWsgIDxtanNAYXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIC0gY2hhbmdlIEphdmFTY3JpcHQgY29sbGVjdG9yIHN0YXRpc3RpY3Mg
Y2FsbHMgdG8gdXNlIEhhc2hDb3VudGVkU2V0IGluc3RlYWQKKyAgICAgICAgb2YgQ0ZTZXQ7IG90
aGVyIG1pc2MgY2xlYW51cAorICAgICAgICBodHRwOi8vYnVnemlsbGEub3BlbmRhcndpbi5vcmcv
c2hvd19idWcuY2dpP2lkPTcwNzIKKworICAgICAgICAqIE1pc2Muc3VicHJvai9XZWJDb3JlU3Rh
dGlzdGljcy5oOgorICAgICAgICAqIE1pc2Muc3VicHJvai9XZWJDb3JlU3RhdGlzdGljcy5tOgor
ICAgICAgICAoK1tXZWJDb3JlU3RhdGlzdGljcyBqYXZhU2NyaXB0UHJvdGVjdGVkT2JqZWN0c0Nv
dW50XSk6IG5ldworICAgICAgICAoK1tXZWJDb3JlU3RhdGlzdGljcyBqYXZhU2NyaXB0Um9vdE9i
amVjVHlwZUNvdW50c10pOiBuZXcKKyAgICAgICAgKCtbV2ViQ29yZVN0YXRpc3RpY3MgamF2YVNj
cmlwdFJvb3RPYmplY3RDbGFzc2VzXSk6IGRlcHJlY2F0ZWQKKyAgICAgICAgKCtbV2ViQ29yZVN0
YXRpc3RpY3MgamF2YVNjcmlwdFJlZmVyZW5jZWRPYmplY3RzQ291bnRdKTogZGVwcmVjYXRlZAor
ICAgICAgICAoK1tXZWJDb3JlU3RhdGlzdGljcyBqYXZhU2NyaXB0Tm9HQ0FsbG93ZWRPYmplY3Rz
Q291bnRdKTogSnVzdCByZXR1cm4gMC4gRGVwcmVjYXRlZC4KKwogMjAwNi0wMi0wMyAgTWFjaWVq
IFN0YWNob3dpYWsgIDxtanNAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhcmlu
LgpJbmRleDogV2ViS2l0L01pc2Muc3VicHJvai9XZWJDb3JlU3RhdGlzdGljcy5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYktpdC9NaXNjLnN1YnByb2ovV2ViQ29yZVN0YXRpc3RpY3MuaAkocmV2aXNpb24g
MTI1NDEpCisrKyBXZWJLaXQvTWlzYy5zdWJwcm9qL1dlYkNvcmVTdGF0aXN0aWNzLmgJKHdvcmtp
bmcgY29weSkKQEAgLTQwLDEwICs0MCwxNSBAQAogCiArIChzaXplX3QpamF2YVNjcmlwdE9iamVj
dHNDb3VudDsKICsgKHNpemVfdClqYXZhU2NyaXB0SW50ZXJwcmV0ZXJzQ291bnQ7CisrIChzaXpl
X3QpamF2YVNjcmlwdFByb3RlY3RlZE9iamVjdHNDb3VudDsKKysgKE5TQ291bnRlZFNldCAqKWph
dmFTY3JpcHRSb290T2JqZWNUeXBlQ291bnRzOworKyAodm9pZClnYXJiYWdlQ29sbGVjdEphdmFT
Y3JpcHRPYmplY3RzOworCisKKy8vIGRlcHJlY2F0ZWQKICsgKHNpemVfdClqYXZhU2NyaXB0Tm9H
Q0FsbG93ZWRPYmplY3RzQ291bnQ7CiArIChzaXplX3QpamF2YVNjcmlwdFJlZmVyZW5jZWRPYmpl
Y3RzQ291bnQ7CiArIChOU1NldCAqKWphdmFTY3JpcHRSb290T2JqZWN0Q2xhc3NlczsKLSsgKHZv
aWQpZ2FyYmFnZUNvbGxlY3RKYXZhU2NyaXB0T2JqZWN0czsKIAogKyAoQk9PTClzaG91bGRQcmlu
dEV4Y2VwdGlvbnM7CiArICh2b2lkKXNldFNob3VsZFByaW50RXhjZXB0aW9uczooQk9PTClwcmlu
dDsKSW5kZXg6IFdlYktpdC9NaXNjLnN1YnByb2ovV2ViQ29yZVN0YXRpc3RpY3MubQo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBXZWJLaXQvTWlzYy5zdWJwcm9qL1dlYkNvcmVTdGF0aXN0aWNzLm0JKHJldmlzaW9u
IDEyNTQxKQorKysgV2ViS2l0L01pc2Muc3VicHJvai9XZWJDb3JlU3RhdGlzdGljcy5tCSh3b3Jr
aW5nIGNvcHkpCkBAIC02MywxNyArNjMsMjcgQEAKIAogKyAoc2l6ZV90KWphdmFTY3JpcHROb0dD
QWxsb3dlZE9iamVjdHNDb3VudAogewotICAgIHJldHVybiBbV2ViQ29yZUphdmFTY3JpcHQgbm9H
Q0FsbG93ZWRPYmplY3RDb3VudF07CisgICAgcmV0dXJuIDA7CiB9CiAKICsgKHNpemVfdClqYXZh
U2NyaXB0UmVmZXJlbmNlZE9iamVjdHNDb3VudAogewotICAgIHJldHVybiBbV2ViQ29yZUphdmFT
Y3JpcHQgcmVmZXJlbmNlZE9iamVjdENvdW50XTsKKyAgICByZXR1cm4gW1dlYkNvcmVKYXZhU2Ny
aXB0IHByb3RlY3RlZE9iamVjdENvdW50XTsKK30KKworKyAoc2l6ZV90KWphdmFTY3JpcHRQcm90
ZWN0ZWRPYmplY3RzQ291bnQKK3sKKyAgICByZXR1cm4gW1dlYkNvcmVKYXZhU2NyaXB0IHByb3Rl
Y3RlZE9iamVjdENvdW50XTsKIH0KIAogKyAoTlNTZXQgKilqYXZhU2NyaXB0Um9vdE9iamVjdENs
YXNzZXMKIHsKLSAgICByZXR1cm4gW1dlYkNvcmVKYXZhU2NyaXB0IHJvb3RPYmplY3RDbGFzc2Vz
XTsKKyAgICByZXR1cm4gW1dlYkNvcmVKYXZhU2NyaXB0IHJvb3RPYmplY3RUeXBlQ291bnRzXTsK
K30KKworKyAoTlNDb3VudGVkU2V0ICopamF2YVNjcmlwdFJvb3RPYmplY1R5cGVDb3VudHMKK3sK
KyAgICByZXR1cm4gW1dlYkNvcmVKYXZhU2NyaXB0IHJvb3RPYmplY3RUeXBlQ291bnRzXTsKIH0K
IAogKyAodm9pZClnYXJiYWdlQ29sbGVjdEphdmFTY3JpcHRPYmplY3RzCkluZGV4OiBXZWJDb3Jl
L0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTI1
NTgpCisrKyBXZWJDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSw1ICsxLDE5IEBA
CiAyMDA2LTAyLTA0ICBNYWNpZWogU3RhY2hvd2lhayAgPG1qc0BhcHBsZS5jb20+CiAKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgLSBjaGFuZ2UgSmF2YVNj
cmlwdCBjb2xsZWN0b3Igc3RhdGlzdGljcyBjYWxscyB0byB1c2UgSGFzaENvdW50ZWRTZXQgaW5z
dGVhZAorICAgICAgICBvZiBDRlNldDsgb3RoZXIgbWlzYyBjbGVhbnVwCisgICAgICAgIGh0dHA6
Ly9idWd6aWxsYS5vcGVuZGFyd2luLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzA3MgorCisgICAgICAg
ICoga3dxL1dlYkNvcmVKYXZhU2NyaXB0Lmg6CisgICAgICAgICoga3dxL1dlYkNvcmVKYXZhU2Ny
aXB0Lm1tOgorICAgICAgICAoK1tXZWJDb3JlSmF2YVNjcmlwdCBwcm90ZWN0ZWRPYmplY3RDb3Vu
dF0pOiBSZW5hbWVkIGZyb20gcmVmZXJlbmNlZE9iamVjdENvdW50cworICAgICAgICAoK1tXZWJD
b3JlSmF2YVNjcmlwdCByb290T2JqZWN0VHlwZUNvdW50c10pOiBSZW5hbWVkIGZyb20gcm9vdE9i
amVjdENsYXNzZXMsCisgICAgICAgIGNoYW5nZWQgZnJvbSBOU1NldCB0byBOU0NvdW50ZWRTZXQu
CisKKzIwMDYtMDItMDQgIE1hY2llaiBTdGFjaG93aWFrICA8bWpzQGFwcGxlLmNvbT4KKwogICAg
ICAgICBSZXZpZXdlZCBieSBEYXJpbi4KIAogICAgICAgICAtIHJlZmFjdG9yIGFuZCBzaW1wbGlm
eSBjb2RlIHVzaW5nIENoaWxkRnJhbWUgaW4gcHJlcGFyYXRpb24gZm9yIHJlbW92aW5nIGl0Cklu
ZGV4OiBXZWJDb3JlL2t3cS9XZWJDb3JlSmF2YVNjcmlwdC5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUva3dxL1dlYkNvcmVKYXZhU2NyaXB0LmgJKHJldmlzaW9uIDEyNTU3KQorKysgV2ViQ29yZS9r
d3EvV2ViQ29yZUphdmFTY3JpcHQuaAkod29ya2luZyBjb3B5KQpAQCAtMzAsMTEgKzMwLDkgQEAK
IH0KIAogKyAoc2l6ZV90KWludGVycHJldGVyQ291bnQ7Ci0KICsgKHNpemVfdClvYmplY3RDb3Vu
dDsKLSsgKHNpemVfdClub0dDQWxsb3dlZE9iamVjdENvdW50OwotKyAoc2l6ZV90KXJlZmVyZW5j
ZWRPYmplY3RDb3VudDsKLSsgKE5TU2V0ICopcm9vdE9iamVjdENsYXNzZXM7CisrIChzaXplX3Qp
cHJvdGVjdGVkT2JqZWN0Q291bnQ7CisrIChOU0NvdW50ZWRTZXQgKilyb290T2JqZWN0VHlwZUNv
dW50czsKIAogKyAodm9pZClnYXJiYWdlQ29sbGVjdDsKIApJbmRleDogV2ViQ29yZS9rd3EvV2Vi
Q29yZUphdmFTY3JpcHQubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9rd3EvV2ViQ29yZUphdmFT
Y3JpcHQubW0JKHJldmlzaW9uIDEyNTU3KQorKysgV2ViQ29yZS9rd3EvV2ViQ29yZUphdmFTY3Jp
cHQubW0JKHdvcmtpbmcgY29weSkKQEAgLTQ2LDIwICs0NiwyNCBAQCB1c2luZyBLSlM6OkpTTG9j
azsKICAgICByZXR1cm4gQ29sbGVjdG9yOjpudW1JbnRlcnByZXRlcnMoKTsKIH0KIAotKyAoc2l6
ZV90KW5vR0NBbGxvd2VkT2JqZWN0Q291bnQKKysgKHNpemVfdClwcm90ZWN0ZWRPYmplY3RDb3Vu
dAogewotICAgIHJldHVybiBDb2xsZWN0b3I6Om51bUdDTm90QWxsb3dlZE9iamVjdHMoKTsKKyAg
ICByZXR1cm4gQ29sbGVjdG9yOjpudW1Qcm90ZWN0ZWRPYmplY3RzKCk7CiB9CiAKLSsgKHNpemVf
dClyZWZlcmVuY2VkT2JqZWN0Q291bnQKLXsKLSAgICByZXR1cm4gQ29sbGVjdG9yOjpudW1SZWZl
cmVuY2VkT2JqZWN0cygpOwotfQotCi0rIChOU1NldCAqKXJvb3RPYmplY3RDbGFzc2VzCisrIChO
U0NvdW50ZWRTZXQgKilyb290T2JqZWN0VHlwZUNvdW50cwogewogICAgIEpTTG9jayBsb2NrOwot
ICAgIHJldHVybiBbKE5TU2V0ICopQ29sbGVjdG9yOjpyb290T2JqZWN0Q2xhc3NlcygpIGF1dG9y
ZWxlYXNlXTsKKyAgICBOU0NvdW50ZWRTZXQqIHJlc3VsdCA9IFtOU0NvdW50ZWRTZXQgc2V0XTsK
KworICAgIEhhc2hDb3VudGVkU2V0PGNvbnN0IGNoYXIqPiogY291bnRzID0gQ29sbGVjdG9yOjpy
b290T2JqZWN0VHlwZUNvdW50cygpOworICAgIEhhc2hDb3VudGVkU2V0PGNvbnN0IGNoYXIqPjo6
aXRlcmF0b3IgZW5kID0gY291bnRzLT5lbmQoKTsKKyAgICBmb3IgKEhhc2hDb3VudGVkU2V0PGNv
bnN0IGNoYXIqPjo6aXRlcmF0b3IgaXQgPSBjb3VudHMtPmJlZ2luKCk7IGl0ICE9IGVuZDsgKytp
dCkKKyAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IGl0LT5zZWNvbmQ7ICsraSkKKyAg
ICAgICAgICAgIFtyZXN1bHQgYWRkT2JqZWN0OltOU1N0cmluZyBzdHJpbmdXaXRoVVRGOFN0cmlu
ZzppdC0+Zmlyc3RdXTsKKworICAgIGRlbGV0ZSBjb3VudHM7CisgICAgcmV0dXJuIHJlc3VsdDsK
IH0KIAogKyAodm9pZClnYXJiYWdlQ29sbGVjdAo=
</data>
<flag name="review"
          id="1507"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>