<?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>131909</bug_id>
          
          <creation_ts>2014-04-19 23:19:16 -0700</creation_ts>
          <short_desc>bmalloc: Segregate pages by objects size</short_desc>
          <delta_ts>2014-04-20 12:33:38 -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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Geoffrey Garen">ggaren</reporter>
          <assigned_to name="Geoffrey Garen">ggaren</assigned_to>
          <cc>kling</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1002351</commentid>
    <comment_count>0</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2014-04-19 23:19:16 -0700</bug_when>
    <thetext>bmalloc: Segregate pages by objects size</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1002354</commentid>
    <comment_count>1</comment_count>
      <attachid>229758</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2014-04-19 23:30:00 -0700</bug_when>
    <thetext>Created attachment 229758
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1002357</commentid>
    <comment_count>2</comment_count>
      <attachid>229758</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-04-20 00:15:39 -0700</bug_when>
    <thetext>Comment on attachment 229758
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1002417</commentid>
    <comment_count>3</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2014-04-20 12:33:38 -0700</bug_when>
    <thetext>Committed r167570: &lt;http://trac.webkit.org/changeset/167570&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>229758</attachid>
            <date>2014-04-19 23:30:00 -0700</date>
            <delta_ts>2014-04-20 00:15:34 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-131909-20140419232939.patch</filename>
            <type>text/plain</type>
            <size>13930</size>
            <attacher name="Geoffrey Garen">ggaren</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9ibWFsbG9jL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvYm1h
bGxvYy9DaGFuZ2VMb2cJKHJldmlzaW9uIDE2NzU2MykKKysrIFNvdXJjZS9ibWFsbG9jL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQ5IEBACisyMDE0LTA0LTE5ICBHZW9mZnJl
eSBHYXJlbiAgPGdnYXJlbkBhcHBsZS5jb20+CisKKyAgICAgICAgYm1hbGxvYzogU2VncmVnYXRl
IHBhZ2VzIGJ5IG9iamVjdHMgc2l6ZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTMxOTA5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgMiUgcmVkdWN0aW9uIGluIG1lbW9yeS1hdC1lbmQgb24gdGhlIE1lbWJ1
c3RlciBtZW1vcnlfd2FybmluZyBiZW5jaG1hcmtzLgorCisgICAgICAgICogYm1hbGxvYy9BbGxv
Y2F0b3IuY3BwOgorICAgICAgICAoYm1hbGxvYzo6QWxsb2NhdG9yOjphbGxvY2F0ZVNsb3dDYXNl
KToKKyAgICAgICAgKiBibWFsbG9jL0FsbG9jYXRvci5oOgorICAgICAgICAoYm1hbGxvYzo6QWxs
b2NhdG9yOjphbGxvY2F0ZUZhc3RDYXNlKToKKyAgICAgICAgKGJtYWxsb2M6OkFsbG9jYXRvcjo6
c21hbGxBbGxvY2F0b3JGb3IpOiBVc2UgdGhlIG5ldyBzaGFyZWQgaGVscGVyCisgICAgICAgIGZ1
bmN0aW9uIGZvciBzaXplIGNsYXNzIGNhbGN1bGF0aW9uLgorCisgICAgICAgICogYm1hbGxvYy9E
ZWFsbG9jYXRvci5jcHA6CisgICAgICAgIChibWFsbG9jOjpEZWFsbG9jYXRvcjo6RGVhbGxvY2F0
b3IpOgorICAgICAgICAoYm1hbGxvYzo6RGVhbGxvY2F0b3I6OnNjYXZlbmdlKToKKyAgICAgICAg
KGJtYWxsb2M6OkRlYWxsb2NhdG9yOjpkZWFsbG9jYXRlU21hbGxMaW5lKToKKyAgICAgICAgKGJt
YWxsb2M6OkRlYWxsb2NhdG9yOjphbGxvY2F0ZVNtYWxsTGluZSk6CisgICAgICAgICogYm1hbGxv
Yy9EZWFsbG9jYXRvci5oOiBLZWVwIGEgY2FjaGUgZm9yIGV2ZXJ5IHNpemUgY2xhc3MsIHNpbmNl
IHRoZQorICAgICAgICBjYWNoZSBjYW4ndCBiZSBzaGFyZWQgYW55bW9yZS4KKworICAgICAgICAq
IGJtYWxsb2MvSGVhcC5jcHA6CisgICAgICAgIChibWFsbG9jOjpIZWFwOjphbGxvY2F0ZVNtYWxs
TGluZVNsb3dDYXNlKToKKyAgICAgICAgKiBibWFsbG9jL0hlYXAuaDoKKyAgICAgICAgKGJtYWxs
b2M6OkhlYXA6OmRlYWxsb2NhdGVTbWFsbExpbmUpOiBEaXR0by4KKworICAgICAgICAoYm1hbGxv
Yzo6SGVhcDo6YWxsb2NhdGVTbWFsbExpbmUpOiBDaGVjayBzaXplIGNsYXNzIGluIGFkZGl0aW9u
IHRvCisgICAgICAgIHBhZ2UgcmVmY291bnQgd2hlbiBhbGxvY2F0aW5nIGEgbGluZSBiZWNhdXNl
IHdlIG1pZ2h0IGhhdmUgZGVhbGxvY2F0ZWQKKyAgICAgICAgdGhlIHBhZ2UgYW5kIHRoZSByZWN5
Y2xlZCBpdCBmb3IgYW5vdGhlciBzaXplIGNsYXNzLgorCisgICAgICAgIChibWFsbG9jOjpIZWFw
OjpkZWFsbG9jYXRlTWVkaXVtTGluZSk6CisgICAgICAgIChibWFsbG9jOjpIZWFwOjphbGxvY2F0
ZU1lZGl1bUxpbmUpOgorICAgICAgICAqIGJtYWxsb2MvTGluZS5oOgorICAgICAgICAoYm1hbGxv
Yzo6TGluZTo6cmVmQ291bnQpOgorICAgICAgICAqIGJtYWxsb2MvUGFnZS5oOgorICAgICAgICAo
Ym1hbGxvYzo6UGFnZTo6cmVmQ291bnQpOgorICAgICAgICAoYm1hbGxvYzo6UGFnZTo6c21hbGxT
aXplQ2xhc3MpOgorICAgICAgICAoYm1hbGxvYzo6UGFnZTo6c2V0U21hbGxTaXplQ2xhc3MpOgor
ICAgICAgICAoYm1hbGxvYzo6UGFnZTxUcmFpdHM+OjpyZWZDb3VudCk6IERlbGV0ZWQuCisgICAg
ICAgICogYm1hbGxvYy9TaXplcy5oOgorICAgICAgICAoYm1hbGxvYzo6U2l6ZXM6OnNtYWxsU2l6
ZUNsYXNzRm9yKTogTmV3IHNoYXJlZCBBUEkgZm9yIGNvbXB1dGluZworICAgICAgICBhbiBpbmRl
eCBpbnRvIGFuIGFycmF5IGZyb20gYSBzaXplLgorCiAyMDE0LTA0LTE5ICBHZW9mZnJleSBHYXJl
biAgPGdnYXJlbkBhcHBsZS5jb20+CiAKICAgICAgICAgYm1hbGxvYzogSW1wcm92ZWQgYWxpZ25t
ZW50IGluIExhcmdlQ2h1bmsKSW5kZXg6IFNvdXJjZS9ibWFsbG9jL2JtYWxsb2MvQWxsb2NhdG9y
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvYm1hbGxvYy9ibWFsbG9jL0FsbG9jYXRvci5jcHAJ
KHJldmlzaW9uIDE2NzU0NikKKysrIFNvdXJjZS9ibWFsbG9jL2JtYWxsb2MvQWxsb2NhdG9yLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMTQ1LDkgKzE0NSwxMCBAQCBJRl9ERUJVRygKICAgICBCQVNT
RVJUKCFhbGxvY2F0ZUZhc3RDYXNlKHNpemUsIGR1bW15KSk7CiApCiAgICAgaWYgKHNpemUgPD0g
c21hbGxNYXgpIHsKLSAgICAgICAgU21hbGxBbGxvY2F0b3ImIGFsbG9jYXRvciA9IHNtYWxsQWxs
b2NhdG9yRm9yKHNpemUpOworICAgICAgICBzaXplX3Qgc21hbGxTaXplQ2xhc3MgPSBzbWFsbFNp
emVDbGFzc0ZvcihzaXplKTsKKyAgICAgICAgU21hbGxBbGxvY2F0b3ImIGFsbG9jYXRvciA9IG1f
c21hbGxBbGxvY2F0b3JzW3NtYWxsU2l6ZUNsYXNzXTsKICAgICAgICAgbG9nKGFsbG9jYXRvcik7
Ci0gICAgICAgIGFsbG9jYXRvci5yZWZpbGwobV9kZWFsbG9jYXRvci5hbGxvY2F0ZVNtYWxsTGlu
ZSgpKTsKKyAgICAgICAgYWxsb2NhdG9yLnJlZmlsbChtX2RlYWxsb2NhdG9yLmFsbG9jYXRlU21h
bGxMaW5lKHNtYWxsU2l6ZUNsYXNzKSk7CiAgICAgICAgIHJldHVybiBhbGxvY2F0b3IuYWxsb2Nh
dGUoKTsKICAgICB9CiAKSW5kZXg6IFNvdXJjZS9ibWFsbG9jL2JtYWxsb2MvQWxsb2NhdG9yLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL2JtYWxsb2MvYm1hbGxvYy9BbGxvY2F0b3IuaAkocmV2aXNp
b24gMTY3NTQ2KQorKysgU291cmNlL2JtYWxsb2MvYm1hbGxvYy9BbGxvY2F0b3IuaAkod29ya2lu
ZyBjb3B5KQpAQCAtNTAsNyArNTAsNiBAQCBwdWJsaWM6CiAgICAgdm9pZCBzY2F2ZW5nZSgpOwog
CiBwcml2YXRlOgotICAgIFNtYWxsQWxsb2NhdG9yJiBzbWFsbEFsbG9jYXRvckZvcihzaXplX3Qp
OwogICAgIHZvaWQqIGFsbG9jYXRlRmFzdENhc2UoU21hbGxBbGxvY2F0b3ImKTsKIAogICAgIHZv
aWQqIGFsbG9jYXRlTWVkaXVtKHNpemVfdCk7CkBAIC03MiwxOCArNzEsMTIgQEAgcHJpdmF0ZToK
ICAgICBGaXhlZFZlY3RvcjxzdGQ6OnBhaXI8TWVkaXVtTGluZSosIHVuc2lnbmVkIGNoYXI+LCBt
ZWRpdW1BbGxvY2F0b3JMb2dDYXBhY2l0eT4gbV9tZWRpdW1BbGxvY2F0b3JMb2c7CiB9OwogCi1p
bmxpbmUgU21hbGxBbGxvY2F0b3ImIEFsbG9jYXRvcjo6c21hbGxBbGxvY2F0b3JGb3Ioc2l6ZV90
IHNpemUpCi17Ci0gICAgc2l6ZV90IGluZGV4ID0gbWFzaygoc2l6ZSAtIDF1bCkgLyBhbGlnbm1l
bnQsIG1fc21hbGxBbGxvY2F0b3JzLnNpemUoKSAtIDEpOwotICAgIHJldHVybiBtX3NtYWxsQWxs
b2NhdG9yc1tpbmRleF07Ci19Ci0KIGlubGluZSBib29sIEFsbG9jYXRvcjo6YWxsb2NhdGVGYXN0
Q2FzZShzaXplX3Qgc2l6ZSwgdm9pZComIG9iamVjdCkKIHsKICAgICBpZiAoc2l6ZSA+IHNtYWxs
TWF4KQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAgICBTbWFsbEFsbG9jYXRvciYgYWxsb2Nh
dG9yID0gc21hbGxBbGxvY2F0b3JGb3Ioc2l6ZSk7CisgICAgU21hbGxBbGxvY2F0b3ImIGFsbG9j
YXRvciA9IG1fc21hbGxBbGxvY2F0b3JzW3NtYWxsU2l6ZUNsYXNzRm9yKHNpemUpXTsKICAgICBp
ZiAoIWFsbG9jYXRvci5jYW5BbGxvY2F0ZSgpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKSW5k
ZXg6IFNvdXJjZS9ibWFsbG9jL2JtYWxsb2MvRGVhbGxvY2F0b3IuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9ibWFsbG9jL2JtYWxsb2MvRGVhbGxvY2F0b3IuY3BwCShyZXZpc2lvbiAxNjc1NDYp
CisrKyBTb3VyY2UvYm1hbGxvYy9ibWFsbG9jL0RlYWxsb2NhdG9yLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtNDAsNyArNDAsNyBAQCBuYW1lc3BhY2UgYm1hbGxvYyB7CiAKIERlYWxsb2NhdG9yOjpE
ZWFsbG9jYXRvcigpCiAgICAgOiBtX29iamVjdExvZygpCi0gICAgLCBtX3NtYWxsTGluZUNhY2hl
KCkKKyAgICAsIG1fc21hbGxMaW5lQ2FjaGVzKCkKICAgICAsIG1fbWVkaXVtTGluZUNhY2hlKCkK
IHsKIH0KQEAgLTU3LDggKzU3LDEwIEBAIHZvaWQgRGVhbGxvY2F0b3I6OnNjYXZlbmdlKCkKICAg
ICBzdGQ6OmxvY2tfZ3VhcmQ8U3RhdGljTXV0ZXg+IGxvY2soUGVyUHJvY2VzczxIZWFwPjo6bXV0
ZXgoKSk7CiAgICAgSGVhcCogaGVhcCA9IFBlclByb2Nlc3M8SGVhcD46OmdldEZhc3RDYXNlKCk7
CiAgICAgCi0gICAgd2hpbGUgKG1fc21hbGxMaW5lQ2FjaGUuc2l6ZSgpKQotICAgICAgICBoZWFw
LT5kZWFsbG9jYXRlU21hbGxMaW5lKGxvY2ssIG1fc21hbGxMaW5lQ2FjaGUucG9wKCkpOworICAg
IGZvciAoYXV0byYgc21hbGxMaW5lQ2FjaGUgOiBtX3NtYWxsTGluZUNhY2hlcykgeworICAgICAg
ICB3aGlsZSAoc21hbGxMaW5lQ2FjaGUuc2l6ZSgpKQorICAgICAgICAgICAgaGVhcC0+ZGVhbGxv
Y2F0ZVNtYWxsTGluZShsb2NrLCBzbWFsbExpbmVDYWNoZS5wb3AoKSk7CisgICAgfQogICAgIHdo
aWxlIChtX21lZGl1bUxpbmVDYWNoZS5zaXplKCkpCiAgICAgICAgIGhlYXAtPmRlYWxsb2NhdGVN
ZWRpdW1MaW5lKGxvY2ssIG1fbWVkaXVtTGluZUNhY2hlLnBvcCgpKTsKIH0KQEAgLTExOSwyMyAr
MTIxLDI1IEBAIHZvaWQgRGVhbGxvY2F0b3I6OmRlYWxsb2NhdGVTbG93Q2FzZSh2b2kKIAogdm9p
ZCBEZWFsbG9jYXRvcjo6ZGVhbGxvY2F0ZVNtYWxsTGluZShzdGQ6OmxvY2tfZ3VhcmQ8U3RhdGlj
TXV0ZXg+JiBsb2NrLCBTbWFsbExpbmUqIGxpbmUpCiB7Ci0gICAgaWYgKG1fc21hbGxMaW5lQ2Fj
aGUuc2l6ZSgpID09IG1fc21hbGxMaW5lQ2FjaGUuY2FwYWNpdHkoKSkKKyAgICBTbWFsbExpbmVD
YWNoZSYgc21hbGxMaW5lQ2FjaGUgPSBtX3NtYWxsTGluZUNhY2hlc1tTbWFsbFBhZ2U6OmdldChs
aW5lKS0+c21hbGxTaXplQ2xhc3MoKV07CisgICAgaWYgKHNtYWxsTGluZUNhY2hlLnNpemUoKSA9
PSBzbWFsbExpbmVDYWNoZS5jYXBhY2l0eSgpKQogICAgICAgICByZXR1cm4gUGVyUHJvY2VzczxI
ZWFwPjo6Z2V0RmFzdENhc2UoKS0+ZGVhbGxvY2F0ZVNtYWxsTGluZShsb2NrLCBsaW5lKTsKIAot
ICAgIG1fc21hbGxMaW5lQ2FjaGUucHVzaChsaW5lKTsKKyAgICBzbWFsbExpbmVDYWNoZS5wdXNo
KGxpbmUpOwogfQogCi1TbWFsbExpbmUqIERlYWxsb2NhdG9yOjphbGxvY2F0ZVNtYWxsTGluZSgp
CitTbWFsbExpbmUqIERlYWxsb2NhdG9yOjphbGxvY2F0ZVNtYWxsTGluZShzaXplX3Qgc21hbGxT
aXplQ2xhc3MpCiB7Ci0gICAgaWYgKCFtX3NtYWxsTGluZUNhY2hlLnNpemUoKSkgeworICAgIFNt
YWxsTGluZUNhY2hlJiBzbWFsbExpbmVDYWNoZSA9IG1fc21hbGxMaW5lQ2FjaGVzW3NtYWxsU2l6
ZUNsYXNzXTsKKyAgICBpZiAoIXNtYWxsTGluZUNhY2hlLnNpemUoKSkgewogICAgICAgICBzdGQ6
OmxvY2tfZ3VhcmQ8U3RhdGljTXV0ZXg+IGxvY2soUGVyUHJvY2VzczxIZWFwPjo6bXV0ZXgoKSk7
CiAgICAgICAgIEhlYXAqIGhlYXAgPSBQZXJQcm9jZXNzPEhlYXA+OjpnZXRGYXN0Q2FzZSgpOwog
Ci0gICAgICAgIHdoaWxlIChtX3NtYWxsTGluZUNhY2hlLnNpemUoKSAhPSBtX3NtYWxsTGluZUNh
Y2hlLmNhcGFjaXR5KCkpCi0gICAgICAgICAgICBtX3NtYWxsTGluZUNhY2hlLnB1c2goaGVhcC0+
YWxsb2NhdGVTbWFsbExpbmUobG9jaykpOworICAgICAgICB3aGlsZSAoc21hbGxMaW5lQ2FjaGUu
c2l6ZSgpICE9IHNtYWxsTGluZUNhY2hlLmNhcGFjaXR5KCkpCisgICAgICAgICAgICBzbWFsbExp
bmVDYWNoZS5wdXNoKGhlYXAtPmFsbG9jYXRlU21hbGxMaW5lKGxvY2ssIHNtYWxsU2l6ZUNsYXNz
KSk7CiAgICAgfQogCi0gICAgcmV0dXJuIG1fc21hbGxMaW5lQ2FjaGUucG9wKCk7CisgICAgcmV0
dXJuIHNtYWxsTGluZUNhY2hlLnBvcCgpOwogfQogCiB2b2lkIERlYWxsb2NhdG9yOjpkZWFsbG9j
YXRlTWVkaXVtTGluZShzdGQ6OmxvY2tfZ3VhcmQ8U3RhdGljTXV0ZXg+JiBsb2NrLCBNZWRpdW1M
aW5lKiBsaW5lKQpJbmRleDogU291cmNlL2JtYWxsb2MvYm1hbGxvYy9EZWFsbG9jYXRvci5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9ibWFsbG9jL2JtYWxsb2MvRGVhbGxvY2F0b3IuaAkocmV2aXNp
b24gMTY3NTQ2KQorKysgU291cmNlL2JtYWxsb2MvYm1hbGxvYy9EZWFsbG9jYXRvci5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC00NSw3ICs0NSw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGRlYWxsb2NhdGVT
bG93Q2FzZSh2b2lkKik7CiAKICAgICB2b2lkIGRlYWxsb2NhdGVTbWFsbExpbmUoc3RkOjpsb2Nr
X2d1YXJkPFN0YXRpY011dGV4PiYsIFNtYWxsTGluZSopOwotICAgIFNtYWxsTGluZSogYWxsb2Nh
dGVTbWFsbExpbmUoKTsKKyAgICBTbWFsbExpbmUqIGFsbG9jYXRlU21hbGxMaW5lKHNpemVfdCBz
bWFsbFNpemVDbGFzcyk7CiAKICAgICB2b2lkIGRlYWxsb2NhdGVNZWRpdW1MaW5lKHN0ZDo6bG9j
a19ndWFyZDxTdGF0aWNNdXRleD4mLCBNZWRpdW1MaW5lKik7CiAgICAgTWVkaXVtTGluZSogYWxs
b2NhdGVNZWRpdW1MaW5lKCk7CkBAIC01MywxMyArNTMsMTYgQEAgcHVibGljOgogICAgIHZvaWQg
c2NhdmVuZ2UoKTsKICAgICAKIHByaXZhdGU6CisgICAgdHlwZWRlZiBGaXhlZFZlY3RvcjxTbWFs
bExpbmUqLCBzbWFsbExpbmVDYWNoZUNhcGFjaXR5PiBTbWFsbExpbmVDYWNoZTsKKyAgICB0eXBl
ZGVmIEZpeGVkVmVjdG9yPE1lZGl1bUxpbmUqLCBtZWRpdW1MaW5lQ2FjaGVDYXBhY2l0eT4gTWVk
aXVtTGluZUNhY2hlOworCiAgICAgdm9pZCBkZWFsbG9jYXRlTGFyZ2Uodm9pZCopOwogICAgIHZv
aWQgZGVhbGxvY2F0ZVhMYXJnZSh2b2lkKik7CiAgICAgdm9pZCBwcm9jZXNzT2JqZWN0TG9nKCk7
CiAKICAgICBGaXhlZFZlY3Rvcjx2b2lkKiwgZGVhbGxvY2F0b3JMb2dDYXBhY2l0eT4gbV9vYmpl
Y3RMb2c7Ci0gICAgRml4ZWRWZWN0b3I8U21hbGxMaW5lKiwgc21hbGxMaW5lQ2FjaGVDYXBhY2l0
eT4gbV9zbWFsbExpbmVDYWNoZTsKLSAgICBGaXhlZFZlY3RvcjxNZWRpdW1MaW5lKiwgbWVkaXVt
TGluZUNhY2hlQ2FwYWNpdHk+IG1fbWVkaXVtTGluZUNhY2hlOworICAgIHN0ZDo6YXJyYXk8U21h
bGxMaW5lQ2FjaGUsIHNtYWxsTWF4IC8gYWxpZ25tZW50PiBtX3NtYWxsTGluZUNhY2hlczsKKyAg
ICBNZWRpdW1MaW5lQ2FjaGUgbV9tZWRpdW1MaW5lQ2FjaGU7CiB9OwogCiBpbmxpbmUgYm9vbCBE
ZWFsbG9jYXRvcjo6ZGVhbGxvY2F0ZUZhc3RDYXNlKHZvaWQqIG9iamVjdCkKSW5kZXg6IFNvdXJj
ZS9ibWFsbG9jL2JtYWxsb2MvSGVhcC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL2JtYWxsb2Mv
Ym1hbGxvYy9IZWFwLmNwcAkocmV2aXNpb24gMTY3NTQ2KQorKysgU291cmNlL2JtYWxsb2MvYm1h
bGxvYy9IZWFwLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTE2LDcgKzExNiw3IEBAIHZvaWQgSGVh
cDo6c2NhdmVuZ2VMYXJnZVJhbmdlcyhzdGQ6OnVuaXEKICAgICB9CiB9CiAKLVNtYWxsTGluZSog
SGVhcDo6YWxsb2NhdGVTbWFsbExpbmVTbG93Q2FzZShzdGQ6OmxvY2tfZ3VhcmQ8U3RhdGljTXV0
ZXg+JiBsb2NrKQorU21hbGxMaW5lKiBIZWFwOjphbGxvY2F0ZVNtYWxsTGluZVNsb3dDYXNlKHN0
ZDo6bG9ja19ndWFyZDxTdGF0aWNNdXRleD4mIGxvY2ssIHNpemVfdCBzbWFsbFNpemVDbGFzcykK
IHsKICAgICBtX2lzQWxsb2NhdGluZ1BhZ2VzID0gdHJ1ZTsKIApAQCAtMTMwLDkgKzEzMCwxMiBA
QCBTbWFsbExpbmUqIEhlYXA6OmFsbG9jYXRlU21hbGxMaW5lU2xvd0NhCiAgICAgfSgpOwogCiAg
ICAgU21hbGxMaW5lKiBsaW5lID0gcGFnZS0+YmVnaW4oKTsKKyAgICBWZWN0b3I8U21hbGxMaW5l
Kj4mIHNtYWxsTGluZXMgPSBtX3NtYWxsTGluZXNbc21hbGxTaXplQ2xhc3NdOwogICAgIGZvciAo
YXV0byBpdCA9IGxpbmUgKyAxOyBpdCAhPSBwYWdlLT5lbmQoKTsgKytpdCkKLSAgICAgICAgbV9z
bWFsbExpbmVzLnB1c2goaXQpOworICAgICAgICBzbWFsbExpbmVzLnB1c2goaXQpOwogCisgICAg
QkFTU0VSVCghbGluZS0+cmVmQ291bnQobG9jaykpOworICAgIHBhZ2UtPnNldFNtYWxsU2l6ZUNs
YXNzKHNtYWxsU2l6ZUNsYXNzKTsKICAgICBwYWdlLT5yZWYobG9jayk7CiAgICAgcmV0dXJuIGxp
bmU7CiB9CkluZGV4OiBTb3VyY2UvYm1hbGxvYy9ibWFsbG9jL0hlYXAuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvYm1hbGxvYy9ibWFsbG9jL0hlYXAuaAkocmV2aXNpb24gMTY3NTQ2KQorKysgU291
cmNlL2JtYWxsb2MvYm1hbGxvYy9IZWFwLmgJKHdvcmtpbmcgY29weSkKQEAgLTQ5LDcgKzQ5LDcg
QEAgY2xhc3MgSGVhcCB7CiBwdWJsaWM6CiAgICAgSGVhcChzdGQ6OmxvY2tfZ3VhcmQ8U3RhdGlj
TXV0ZXg+Jik7CiAKLSAgICBTbWFsbExpbmUqIGFsbG9jYXRlU21hbGxMaW5lKHN0ZDo6bG9ja19n
dWFyZDxTdGF0aWNNdXRleD4mKTsKKyAgICBTbWFsbExpbmUqIGFsbG9jYXRlU21hbGxMaW5lKHN0
ZDo6bG9ja19ndWFyZDxTdGF0aWNNdXRleD4mLCBzaXplX3Qgc21hbGxTaXplQ2xhc3MpOwogICAg
IHZvaWQgZGVhbGxvY2F0ZVNtYWxsTGluZShzdGQ6OmxvY2tfZ3VhcmQ8U3RhdGljTXV0ZXg+Jiwg
U21hbGxMaW5lKik7CiAKICAgICBNZWRpdW1MaW5lKiBhbGxvY2F0ZU1lZGl1bUxpbmUoc3RkOjps
b2NrX2d1YXJkPFN0YXRpY011dGV4PiYpOwpAQCAtNjYsNyArNjYsNyBAQCBwdWJsaWM6CiBwcml2
YXRlOgogICAgIH5IZWFwKCkgPSBkZWxldGU7CiAKLSAgICBTbWFsbExpbmUqIGFsbG9jYXRlU21h
bGxMaW5lU2xvd0Nhc2Uoc3RkOjpsb2NrX2d1YXJkPFN0YXRpY011dGV4PiYpOworICAgIFNtYWxs
TGluZSogYWxsb2NhdGVTbWFsbExpbmVTbG93Q2FzZShzdGQ6OmxvY2tfZ3VhcmQ8U3RhdGljTXV0
ZXg+Jiwgc2l6ZV90IHNtYWxsU2l6ZUNsYXNzKTsKICAgICBNZWRpdW1MaW5lKiBhbGxvY2F0ZU1l
ZGl1bUxpbmVTbG93Q2FzZShzdGQ6OmxvY2tfZ3VhcmQ8U3RhdGljTXV0ZXg+Jik7CiAKICAgICB2
b2lkKiBhbGxvY2F0ZUxhcmdlKFJhbmdlLCBzaXplX3QpOwpAQCAtODIsNyArODIsNyBAQCBwcml2
YXRlOgogICAgIHZvaWQgc2NhdmVuZ2VNZWRpdW1QYWdlcyhzdGQ6OnVuaXF1ZV9sb2NrPFN0YXRp
Y011dGV4PiYsIHN0ZDo6Y2hyb25vOjptaWxsaXNlY29uZHMpOwogICAgIHZvaWQgc2NhdmVuZ2VM
YXJnZVJhbmdlcyhzdGQ6OnVuaXF1ZV9sb2NrPFN0YXRpY011dGV4PiYsIHN0ZDo6Y2hyb25vOjpt
aWxsaXNlY29uZHMpOwogCi0gICAgVmVjdG9yPFNtYWxsTGluZSo+IG1fc21hbGxMaW5lczsKKyAg
ICBzdGQ6OmFycmF5PFZlY3RvcjxTbWFsbExpbmUqPiwgc21hbGxNYXggLyBhbGlnbm1lbnQ+IG1f
c21hbGxMaW5lczsKICAgICBWZWN0b3I8TWVkaXVtTGluZSo+IG1fbWVkaXVtTGluZXM7CiAKICAg
ICBWZWN0b3I8U21hbGxQYWdlKj4gbV9zbWFsbFBhZ2VzOwpAQCAtOTgsMzEgKzk4LDM1IEBAIHBy
aXZhdGU6CiAKIGlubGluZSB2b2lkIEhlYXA6OmRlYWxsb2NhdGVTbWFsbExpbmUoc3RkOjpsb2Nr
X2d1YXJkPFN0YXRpY011dGV4PiYgbG9jaywgU21hbGxMaW5lKiBsaW5lKQogeworICAgIEJBU1NF
UlQoIWxpbmUtPnJlZkNvdW50KGxvY2spKTsKICAgICBTbWFsbFBhZ2UqIHBhZ2UgPSBTbWFsbFBh
Z2U6OmdldChsaW5lKTsKICAgICBpZiAocGFnZS0+ZGVyZWYobG9jaykpIHsKICAgICAgICAgbV9z
bWFsbFBhZ2VzLnB1c2gocGFnZSk7CiAgICAgICAgIG1fc2NhdmVuZ2VyLnJ1bigpOwogICAgICAg
ICByZXR1cm47CiAgICAgfQotICAgIG1fc21hbGxMaW5lcy5wdXNoKGxpbmUpOworICAgIG1fc21h
bGxMaW5lc1twYWdlLT5zbWFsbFNpemVDbGFzcygpXS5wdXNoKGxpbmUpOwogfQogCi1pbmxpbmUg
U21hbGxMaW5lKiBIZWFwOjphbGxvY2F0ZVNtYWxsTGluZShzdGQ6OmxvY2tfZ3VhcmQ8U3RhdGlj
TXV0ZXg+JiBsb2NrKQoraW5saW5lIFNtYWxsTGluZSogSGVhcDo6YWxsb2NhdGVTbWFsbExpbmUo
c3RkOjpsb2NrX2d1YXJkPFN0YXRpY011dGV4PiYgbG9jaywgc2l6ZV90IHNtYWxsU2l6ZUNsYXNz
KQogewotICAgIHdoaWxlIChtX3NtYWxsTGluZXMuc2l6ZSgpKSB7Ci0gICAgICAgIFNtYWxsTGlu
ZSogbGluZSA9IG1fc21hbGxMaW5lcy5wb3AoKTsKKyAgICBWZWN0b3I8U21hbGxMaW5lKj4mIHNt
YWxsTGluZXMgPSBtX3NtYWxsTGluZXNbc21hbGxTaXplQ2xhc3NdOworICAgIHdoaWxlIChzbWFs
bExpbmVzLnNpemUoKSkgeworICAgICAgICBTbWFsbExpbmUqIGxpbmUgPSBzbWFsbExpbmVzLnBv
cCgpOwogICAgICAgICBTbWFsbFBhZ2UqIHBhZ2UgPSBTbWFsbFBhZ2U6OmdldChsaW5lKTsKLSAg
ICAgICAgaWYgKCFwYWdlLT5yZWZDb3VudChsb2NrKSkgLy8gVGhlIGxpbmUgd2FzIHByb21vdGVk
IHRvIHRoZSBzbWFsbCBwYWdlcyBsaXN0LgorICAgICAgICBpZiAoIXBhZ2UtPnJlZkNvdW50KGxv
Y2spIHx8IHBhZ2UtPnNtYWxsU2l6ZUNsYXNzKCkgIT0gc21hbGxTaXplQ2xhc3MpIC8vIFRoZSBs
aW5lIHdhcyBwcm9tb3RlZCB0byB0aGUgc21hbGwgcGFnZXMgbGlzdC4KICAgICAgICAgICAgIGNv
bnRpbnVlOworICAgICAgICBCQVNTRVJUKCFsaW5lLT5yZWZDb3VudChsb2NrKSk7CiAgICAgICAg
IHBhZ2UtPnJlZihsb2NrKTsKICAgICAgICAgcmV0dXJuIGxpbmU7CiAgICAgfQogCi0gICAgcmV0
dXJuIGFsbG9jYXRlU21hbGxMaW5lU2xvd0Nhc2UobG9jayk7CisgICAgcmV0dXJuIGFsbG9jYXRl
U21hbGxMaW5lU2xvd0Nhc2UobG9jaywgc21hbGxTaXplQ2xhc3MpOwogfQogCiBpbmxpbmUgdm9p
ZCBIZWFwOjpkZWFsbG9jYXRlTWVkaXVtTGluZShzdGQ6OmxvY2tfZ3VhcmQ8U3RhdGljTXV0ZXg+
JiBsb2NrLCBNZWRpdW1MaW5lKiBsaW5lKQogeworICAgIEJBU1NFUlQoIWxpbmUtPnJlZkNvdW50
KGxvY2spKTsKICAgICBNZWRpdW1QYWdlKiBwYWdlID0gTWVkaXVtUGFnZTo6Z2V0KGxpbmUpOwog
ICAgIGlmIChwYWdlLT5kZXJlZihsb2NrKSkgewogICAgICAgICBtX21lZGl1bVBhZ2VzLnB1c2go
cGFnZSk7CkBAIC0xMzksNiArMTQzLDcgQEAgaW5saW5lIE1lZGl1bUxpbmUqIEhlYXA6OmFsbG9j
YXRlTWVkaXVtTAogICAgICAgICBNZWRpdW1QYWdlKiBwYWdlID0gTWVkaXVtUGFnZTo6Z2V0KGxp
bmUpOwogICAgICAgICBpZiAoIXBhZ2UtPnJlZkNvdW50KGxvY2spKSAvLyBUaGUgbGluZSB3YXMg
cHJvbW90ZWQgdG8gdGhlIG1lZGl1bSBwYWdlcyBsaXN0LgogICAgICAgICAgICAgY29udGludWU7
CisgICAgICAgIEJBU1NFUlQoIWxpbmUtPnJlZkNvdW50KGxvY2spKTsKICAgICAgICAgcGFnZS0+
cmVmKGxvY2spOwogICAgICAgICByZXR1cm4gbGluZTsKICAgICB9CkluZGV4OiBTb3VyY2UvYm1h
bGxvYy9ibWFsbG9jL0xpbmUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvYm1hbGxvYy9ibWFsbG9j
L0xpbmUuaAkocmV2aXNpb24gMTY3NTQ2KQorKysgU291cmNlL2JtYWxsb2MvYm1hbGxvYy9MaW5l
LmgJKHdvcmtpbmcgY29weSkKQEAgLTQ3LDYgKzQ3LDcgQEAgcHVibGljOgogCiAgICAgdm9pZCBj
b25jdXJyZW50UmVmKHVuc2lnbmVkIGNoYXIgPSAxKTsKICAgICBib29sIGRlcmVmKHN0ZDo6bG9j
a19ndWFyZDxTdGF0aWNNdXRleD4mLCB1bnNpZ25lZCBjaGFyID0gMSk7CisgICAgdW5zaWduZWQg
cmVmQ291bnQoc3RkOjpsb2NrX2d1YXJkPFN0YXRpY011dGV4PiYpIHsgcmV0dXJuIG1fcmVmQ291
bnQ7IH0KICAgICAKICAgICBjaGFyKiBiZWdpbigpOwogICAgIGNoYXIqIGVuZCgpOwpJbmRleDog
U291cmNlL2JtYWxsb2MvYm1hbGxvYy9QYWdlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL2JtYWxs
b2MvYm1hbGxvYy9QYWdlLmgJKHJldmlzaW9uIDE2NzU0NSkKKysrIFNvdXJjZS9ibWFsbG9jL2Jt
YWxsb2MvUGFnZS5oCSh3b3JraW5nIGNvcHkpCkBAIC00NywxMyArNDcsMTcgQEAgcHVibGljOgog
CiAgICAgdm9pZCByZWYoc3RkOjpsb2NrX2d1YXJkPFN0YXRpY011dGV4PiYpOwogICAgIGJvb2wg
ZGVyZWYoc3RkOjpsb2NrX2d1YXJkPFN0YXRpY011dGV4PiYpOwotICAgIHVuc2lnbmVkIHJlZkNv
dW50KHN0ZDo6bG9ja19ndWFyZDxTdGF0aWNNdXRleD4mKTsKKyAgICB1bnNpZ25lZCByZWZDb3Vu
dChzdGQ6OmxvY2tfZ3VhcmQ8U3RhdGljTXV0ZXg+JikgeyByZXR1cm4gbV9yZWZDb3VudDsgfQor
ICAgIAorICAgIHNpemVfdCBzbWFsbFNpemVDbGFzcygpIHsgcmV0dXJuIG1fc21hbGxTaXplQ2xh
c3M7IH0KKyAgICB2b2lkIHNldFNtYWxsU2l6ZUNsYXNzKHNpemVfdCBzbWFsbFNpemVDbGFzcykg
eyBtX3NtYWxsU2l6ZUNsYXNzID0gc21hbGxTaXplQ2xhc3M7IH0KICAgICAKICAgICBMaW5lKiBi
ZWdpbigpOwogICAgIExpbmUqIGVuZCgpOwogCiBwcml2YXRlOgogICAgIHVuc2lnbmVkIGNoYXIg
bV9yZWZDb3VudDsKKyAgICB1bnNpZ25lZCBjaGFyIG1fc21hbGxTaXplQ2xhc3M7CiB9OwogCiB0
ZW1wbGF0ZTx0eXBlbmFtZSBUcmFpdHM+CkBAIC03MiwxMiArNzYsNiBAQCBpbmxpbmUgYm9vbCBQ
YWdlPFRyYWl0cz46OmRlcmVmKHN0ZDo6bG9jCiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFRyYWl0
cz4KLWlubGluZSB1bnNpZ25lZCBQYWdlPFRyYWl0cz46OnJlZkNvdW50KHN0ZDo6bG9ja19ndWFy
ZDxTdGF0aWNNdXRleD4mKQotewotICAgIHJldHVybiBtX3JlZkNvdW50OwotfQotCi10ZW1wbGF0
ZTx0eXBlbmFtZSBUcmFpdHM+CiBpbmxpbmUgYXV0byBQYWdlPFRyYWl0cz46OmdldChMaW5lKiBs
aW5lKSAtPiBQYWdlKgogewogICAgIENodW5rKiBjaHVuayA9IENodW5rOjpnZXQobGluZSk7Cklu
ZGV4OiBTb3VyY2UvYm1hbGxvYy9ibWFsbG9jL1NpemVzLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L2JtYWxsb2MvYm1hbGxvYy9TaXplcy5oCShyZXZpc2lvbiAxNjc1NDYpCisrKyBTb3VyY2UvYm1h
bGxvYy9ibWFsbG9jL1NpemVzLmgJKHdvcmtpbmcgY29weSkKQEAgLTg5LDYgKzg5LDEyIEBAIG5h
bWVzcGFjZSBTaXplcyB7CiAgICAgc3RhdGljIGNvbnN0IHNpemVfdCBtZWRpdW1BbGxvY2F0b3JM
b2dDYXBhY2l0eSA9IDg7CiAgICAgCiAgICAgc3RhdGljIGNvbnN0IHN0ZDo6Y2hyb25vOjptaWxs
aXNlY29uZHMgc2NhdmVuZ2VTbGVlcER1cmF0aW9uID0gc3RkOjpjaHJvbm86Om1pbGxpc2Vjb25k
cyg1MTIpOworCisgICAgaW5saW5lIHNpemVfdCBzbWFsbFNpemVDbGFzc0ZvcihzaXplX3Qgc2l6
ZSkKKyAgICB7CisgICAgICAgIHN0YXRpYyBjb25zdCBzaXplX3Qgc21hbGxTaXplQ2xhc3NNYXNr
ID0gKHNtYWxsTWF4IC8gYWxpZ25tZW50KSAtIDE7CisgICAgICAgIHJldHVybiBtYXNrKChzaXpl
IC0gMXVsKSAvIGFsaWdubWVudCwgc21hbGxTaXplQ2xhc3NNYXNrKTsKKyAgICB9CiB9OwogCiB1
c2luZyBuYW1lc3BhY2UgU2l6ZXM7Cg==
</data>
<flag name="review"
          id="254129"
          type_id="1"
          status="+"
          setter="kling"
    />
          </attachment>
      

    </bug>

</bugzilla>