<?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>146069</bug_id>
          
          <creation_ts>2015-06-17 10:50:52 -0700</creation_ts>
          <short_desc>SegmentedVector should waste less memory.</short_desc>
          <delta_ts>2015-06-17 13:28:04 -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>Web Template Framework</component>
          <version>312.x</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>Performance</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Andreas Kling">kling</reporter>
          <assigned_to name="Andreas Kling">kling</assigned_to>
          <cc>benjamin</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>kling</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1102592</commentid>
    <comment_count>0</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2015-06-17 10:50:52 -0700</bug_when>
    <thetext>SegmentedVector should be a Vector&lt;T[SegmentSize&gt;&gt; instead of a Vector&lt;Vector&lt;T, SegmentSize&gt;&gt;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1102595</commentid>
    <comment_count>1</comment_count>
      <attachid>255024</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2015-06-17 11:02:27 -0700</bug_when>
    <thetext>Created attachment 255024
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1102630</commentid>
    <comment_count>2</comment_count>
      <attachid>255024</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2015-06-17 13:28:01 -0700</bug_when>
    <thetext>Comment on attachment 255024
Patch

Clearing flags on attachment: 255024

Committed r185663: &lt;http://trac.webkit.org/changeset/185663&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1102631</commentid>
    <comment_count>3</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2015-06-17 13:28:04 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>255024</attachid>
            <date>2015-06-17 11:02:27 -0700</date>
            <delta_ts>2015-06-17 13:28:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-146069.diff</filename>
            <type>text/plain</type>
            <size>8148</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nIGIvU291cmNlL1dURi9DaGFuZ2VMb2cK
aW5kZXggMDVjNDI0OC4uOTc2Mjk0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dURi9DaGFuZ2VMb2cK
KysrIGIvU291cmNlL1dURi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzNyBAQAorMjAxNS0wNi0xNyAg
QW5kcmVhcyBLbGluZyAgPGFrbGluZ0BhcHBsZS5jb20+CisKKyAgICAgICAgU2VnbWVudGVkVmVj
dG9yIHNob3VsZCB3YXN0ZSBsZXNzIG1lbW9yeS4KKyAgICAgICAgPGh0dHBzOi8vd2Via2l0Lm9y
Zy9iLzE0NjA2OT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBXZSB3ZXJlIHdhc3Rpbmcgc2l6ZW9mKFZlY3Rvcikgb24gZXZlcnkgc2VnbWVudCBpbiBT
ZWdtZW50VmVjdG9yLgorICAgICAgICBUaGUgc2VnbWVudHMgd2VyZSB1c2luZyBpbmxpbmUgY2Fw
YWNpdHksIGFuZCB3b3VsZCBuZXZlciBnbyBiZXlvbmQgaXQsCisgICAgICAgIHNvIGFsbCB0aGUg
c2l6ZS9jYXBhY2l0eS9vdXQtb2YtbGluZS1idWZmZXIgbWV0YWRhdGEgd2FzIHVzZWxlc3MuCisK
KyAgICAgICAgQ2hhbmdlIHRoZSBpbnRlcm5hbCByZXByZXNlbnRhdGlvbiB0byBWZWN0b3I8VFtT
ZWdtZW50U2l6ZV0+IGluc3RlYWQuCisgICAgICAgIFRoaXMgc2F2ZXMgMTYgYnl0ZXMgcGVyIHNl
Z21lbnQsIHNvIGxvd2VyIFNlZ21lbnRTaXplIC0+IGJpZ2dlciBzYXZpbmdzIQorCisgICAgICAg
ICogd3RmL1NlZ21lbnRlZFZlY3Rvci5oOgorICAgICAgICAoV1RGOjpTZWdtZW50ZWRWZWN0b3JJ
dGVyYXRvcjo6b3BlcmF0b3IqKToKKyAgICAgICAgKFdURjo6U2VnbWVudGVkVmVjdG9ySXRlcmF0
b3I6Om9wZXJhdG9yLT4pOgorICAgICAgICAoV1RGOjpTZWdtZW50ZWRWZWN0b3JJdGVyYXRvcjo6
b3BlcmF0b3IrKyk6CisgICAgICAgIChXVEY6OlNlZ21lbnRlZFZlY3Rvckl0ZXJhdG9yOjpvcGVy
YXRvcj09KToKKyAgICAgICAgKFdURjo6U2VnbWVudGVkVmVjdG9ySXRlcmF0b3I6Om9wZXJhdG9y
IT0pOgorICAgICAgICAoV1RGOjpTZWdtZW50ZWRWZWN0b3JJdGVyYXRvcjo6U2VnbWVudGVkVmVj
dG9ySXRlcmF0b3IpOgorICAgICAgICAoV1RGOjpTZWdtZW50ZWRWZWN0b3I6OmF0KToKKyAgICAg
ICAgKFdURjo6U2VnbWVudGVkVmVjdG9yOjphcHBlbmQpOgorICAgICAgICAoV1RGOjpTZWdtZW50
ZWRWZWN0b3I6OnJlbW92ZUxhc3QpOgorICAgICAgICAoV1RGOjpTZWdtZW50ZWRWZWN0b3I6Omdy
b3cpOgorICAgICAgICAoV1RGOjpTZWdtZW50ZWRWZWN0b3I6OmJlZ2luKToKKyAgICAgICAgKFdU
Rjo6U2VnbWVudGVkVmVjdG9yOjplbmQpOgorICAgICAgICAoV1RGOjpTZWdtZW50ZWRWZWN0b3I6
OmRlbGV0ZUFsbFNlZ21lbnRzKToKKyAgICAgICAgKFdURjo6U2VnbWVudGVkVmVjdG9yOjplbnN1
cmVTZWdtZW50c0Zvcik6CisgICAgICAgIChXVEY6OlNlZ21lbnRlZFZlY3Rvcjo6ZW5zdXJlU2Vn
bWVudCk6CisgICAgICAgIChXVEY6OlNlZ21lbnRlZFZlY3Rvcjo6YWxsb2NhdGVTZWdtZW50KToK
KyAgICAgICAgKFdURjo6U2VnbWVudGVkVmVjdG9ySXRlcmF0b3I6Om9wZXJhdG9yPSk6IERlbGV0
ZWQuCisgICAgICAgIChXVEY6OlNlZ21lbnRlZFZlY3Rvcjo6U2VnbWVudGVkVmVjdG9yKTogRGVs
ZXRlZC4KKwogMjAxNS0wNi0xNiAgQW5kcmVhcyBLbGluZyAgPGFrbGluZ0BhcHBsZS5jb20+CiAK
ICAgICAgICAgUmVtb3ZlIHVudXNlZCB0ZW1wbGF0ZSBwYXJhbWV0ZXIgSW5saW5lQ2FwYWNpdHkg
ZnJvbSBTZWdtZW50ZWRWZWN0b3IuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9TZWdtZW50
ZWRWZWN0b3IuaCBiL1NvdXJjZS9XVEYvd3RmL1NlZ21lbnRlZFZlY3Rvci5oCmluZGV4IDJmNDhl
YzcuLjVhZGJjZDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL1NlZ21lbnRlZFZlY3Rvci5o
CisrKyBiL1NvdXJjZS9XVEYvd3RmL1NlZ21lbnRlZFZlY3Rvci5oCkBAIC00NCw1NiArNDQsNDEg
QEAgbmFtZXNwYWNlIFdURiB7CiAKICAgICAgICAgflNlZ21lbnRlZFZlY3Rvckl0ZXJhdG9yKCkg
eyB9CiAKLSAgICAgICAgVCYgb3BlcmF0b3IqKCkgY29uc3QgeyByZXR1cm4gbV92ZWN0b3IubV9z
ZWdtZW50cy5hdChtX3NlZ21lbnQpLT5hdChtX2luZGV4KTsgfQotICAgICAgICBUKiBvcGVyYXRv
ci0+KCkgY29uc3QgeyByZXR1cm4gJm1fdmVjdG9yLm1fc2VnbWVudHMuYXQobV9zZWdtZW50KS0+
YXQobV9pbmRleCk7IH0KKyAgICAgICAgVCYgb3BlcmF0b3IqKCkgY29uc3QgeyByZXR1cm4gbV92
ZWN0b3IuYXQobV9pbmRleCk7IH0KKyAgICAgICAgVCogb3BlcmF0b3ItPigpIGNvbnN0IHsgcmV0
dXJuICZtX3ZlY3Rvci5hdChtX2luZGV4KTsgfQogCiAgICAgICAgIC8vIE9ubHkgcHJlZml4ICsr
IG9wZXJhdG9yIHN1cHBvcnRlZAogICAgICAgICBJdGVyYXRvciYgb3BlcmF0b3IrKygpCiAgICAg
ICAgIHsKLSAgICAgICAgICAgIEFTU0VSVChtX2luZGV4ICE9IFNlZ21lbnRTaXplKTsKLSAgICAg
ICAgICAgICsrbV9pbmRleDsKLSAgICAgICAgICAgIGlmIChtX2luZGV4ID49IG1fdmVjdG9yLm1f
c2VnbWVudHMuYXQobV9zZWdtZW50KS0+c2l6ZSgpKSAgewotICAgICAgICAgICAgICAgIGlmICht
X3NlZ21lbnQgKyAxIDwgbV92ZWN0b3IubV9zZWdtZW50cy5zaXplKCkpIHsKLSAgICAgICAgICAg
ICAgICAgICAgQVNTRVJUKG1fdmVjdG9yLm1fc2VnbWVudHMuYXQobV9zZWdtZW50KS0+c2l6ZSgp
ID4gMCk7Ci0gICAgICAgICAgICAgICAgICAgICsrbV9zZWdtZW50OwotICAgICAgICAgICAgICAg
ICAgICBtX2luZGV4ID0gMDsKLSAgICAgICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAg
ICAgICAgICAvLyBQb2ludHMgdG8gdGhlICJlbmQiIHN5bWJvbAotICAgICAgICAgICAgICAgICAg
ICBtX3NlZ21lbnQgPSAwOwotICAgICAgICAgICAgICAgICAgICBtX2luZGV4ID0gU2VnbWVudFNp
emU7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgfQorICAgICAgICAgICAgbV9pbmRl
eCsrOwogICAgICAgICAgICAgcmV0dXJuICp0aGlzOwogICAgICAgICB9CiAKICAgICAgICAgYm9v
bCBvcGVyYXRvcj09KGNvbnN0IEl0ZXJhdG9yJiBvdGhlcikgY29uc3QKICAgICAgICAgewotICAg
ICAgICAgICAgcmV0dXJuIG1faW5kZXggPT0gb3RoZXIubV9pbmRleCAmJiBtX3NlZ21lbnQgPT0g
b3RoZXIubV9zZWdtZW50ICYmICZtX3ZlY3RvciA9PSAmb3RoZXIubV92ZWN0b3I7CisgICAgICAg
ICAgICByZXR1cm4gbV9pbmRleCA9PSBvdGhlci5tX2luZGV4ICYmICZtX3ZlY3RvciA9PSAmb3Ro
ZXIubV92ZWN0b3I7CiAgICAgICAgIH0KIAogICAgICAgICBib29sIG9wZXJhdG9yIT0oY29uc3Qg
SXRlcmF0b3ImIG90aGVyKSBjb25zdAogICAgICAgICB7Ci0gICAgICAgICAgICByZXR1cm4gbV9p
bmRleCAhPSBvdGhlci5tX2luZGV4IHx8IG1fc2VnbWVudCAhPSBvdGhlci5tX3NlZ21lbnQgfHwg
Jm1fdmVjdG9yICE9ICZvdGhlci5tX3ZlY3RvcjsKKyAgICAgICAgICAgIHJldHVybiBtX2luZGV4
ICE9IG90aGVyLm1faW5kZXggfHwgJm1fdmVjdG9yICE9ICZvdGhlci5tX3ZlY3RvcjsKICAgICAg
ICAgfQogCiAgICAgICAgIFNlZ21lbnRlZFZlY3Rvckl0ZXJhdG9yJiBvcGVyYXRvcj0oY29uc3Qg
U2VnbWVudGVkVmVjdG9ySXRlcmF0b3I8VCwgU2VnbWVudFNpemU+JiBvdGhlcikKICAgICAgICAg
ewogICAgICAgICAgICAgbV92ZWN0b3IgPSBvdGhlci5tX3ZlY3RvcjsKLSAgICAgICAgICAgIG1f
c2VnbWVudCA9IG90aGVyLm1fc2VnbWVudDsKICAgICAgICAgICAgIG1faW5kZXggPSBvdGhlci5t
X2luZGV4OwogICAgICAgICAgICAgcmV0dXJuICp0aGlzOwogICAgICAgICB9CiAKICAgICBwcml2
YXRlOgotICAgICAgICBTZWdtZW50ZWRWZWN0b3JJdGVyYXRvcihTZWdtZW50ZWRWZWN0b3I8VCwg
U2VnbWVudFNpemU+JiB2ZWN0b3IsIHNpemVfdCBzZWdtZW50LCBzaXplX3QgaW5kZXgpCisgICAg
ICAgIFNlZ21lbnRlZFZlY3Rvckl0ZXJhdG9yKFNlZ21lbnRlZFZlY3RvcjxULCBTZWdtZW50U2l6
ZT4mIHZlY3Rvciwgc2l6ZV90IGluZGV4KQogICAgICAgICAgICAgOiBtX3ZlY3Rvcih2ZWN0b3Ip
Ci0gICAgICAgICAgICAsIG1fc2VnbWVudChzZWdtZW50KQogICAgICAgICAgICAgLCBtX2luZGV4
KGluZGV4KQogICAgICAgICB7CiAgICAgICAgIH0KIAogICAgICAgICBTZWdtZW50ZWRWZWN0b3I8
VCwgU2VnbWVudFNpemU+JiBtX3ZlY3RvcjsKLSAgICAgICAgc2l6ZV90IG1fc2VnbWVudDsKICAg
ICAgICAgc2l6ZV90IG1faW5kZXg7CiAgICAgfTsKIApAQCAtMTEwLDEwICs5NSw3IEBAIG5hbWVz
cGFjZSBXVEYgewogICAgIHB1YmxpYzoKICAgICAgICAgdHlwZWRlZiBTZWdtZW50ZWRWZWN0b3JJ
dGVyYXRvcjxULCBTZWdtZW50U2l6ZT4gSXRlcmF0b3I7CiAKLSAgICAgICAgU2VnbWVudGVkVmVj
dG9yKCkKLSAgICAgICAgICAgIDogbV9zaXplKDApCi0gICAgICAgIHsKLSAgICAgICAgfQorICAg
ICAgICBTZWdtZW50ZWRWZWN0b3IoKSA9IGRlZmF1bHQ7CiAKICAgICAgICAgflNlZ21lbnRlZFZl
Y3RvcigpCiAgICAgICAgIHsKQEAgLTEyNSw3ICsxMDcsOCBAQCBuYW1lc3BhY2UgV1RGIHsKIAog
ICAgICAgICBUJiBhdChzaXplX3QgaW5kZXgpCiAgICAgICAgIHsKLSAgICAgICAgICAgIHJldHVy
biBzZWdtZW50Rm9yKGluZGV4KS0+YXQoc3Vic2NyaXB0Rm9yKGluZGV4KSk7CisgICAgICAgICAg
ICBBU1NFUlRfV0lUSF9TRUNVUklUWV9JTVBMSUNBVElPTihpbmRleCA8IG1fc2l6ZSk7CisgICAg
ICAgICAgICByZXR1cm4gc2VnbWVudEZvcihpbmRleCktPmVudHJpZXNbc3Vic2NyaXB0Rm9yKGlu
ZGV4KV07CiAgICAgICAgIH0KIAogICAgICAgICBjb25zdCBUJiBhdChzaXplX3QgaW5kZXgpIGNv
bnN0CkBAIC0xNTEsMTAgKzEzNCw5IEBAIG5hbWVzcGFjZSBXVEYgewogICAgICAgICB0ZW1wbGF0
ZSA8dHlwZW5hbWUgVT4gdm9pZCBhcHBlbmQoVSYmIHZhbHVlKQogICAgICAgICB7CiAgICAgICAg
ICAgICArK21fc2l6ZTsKLQogICAgICAgICAgICAgaWYgKCFzZWdtZW50RXhpc3RzRm9yKG1fc2l6
ZSAtIDEpKQotICAgICAgICAgICAgICAgIG1fc2VnbWVudHMuYXBwZW5kKG5ldyBTZWdtZW50KTsK
LSAgICAgICAgICAgIHNlZ21lbnRGb3IobV9zaXplIC0gMSktPnVuY2hlY2tlZEFwcGVuZChzdGQ6
OmZvcndhcmQ8VT4odmFsdWUpKTsKKyAgICAgICAgICAgICAgICBhbGxvY2F0ZVNlZ21lbnQoKTsK
KyAgICAgICAgICAgIG5ldyAoTm90TnVsbCwgJmxhc3QoKSkgVChzdGQ6OmZvcndhcmQ8VT4odmFs
dWUpKTsKICAgICAgICAgfQogCiAgICAgICAgIHRlbXBsYXRlPHR5cGVuYW1lLi4uIEFyZ3M+CkBA
IC0xNjYsNyArMTQ4LDcgQEAgbmFtZXNwYWNlIFdURiB7CiAKICAgICAgICAgdm9pZCByZW1vdmVM
YXN0KCkKICAgICAgICAgewotICAgICAgICAgICAgc2VnbWVudEZvcihtX3NpemUgLSAxKS0+cmVt
b3ZlTGFzdCgpOworICAgICAgICAgICAgbGFzdCgpLn5UKCk7CiAgICAgICAgICAgICAtLW1fc2l6
ZTsKICAgICAgICAgfQogCkBAIC0xNzQsNyArMTU2LDEwIEBAIG5hbWVzcGFjZSBXVEYgewogICAg
ICAgICB7CiAgICAgICAgICAgICBBU1NFUlQoc2l6ZSA+IG1fc2l6ZSk7CiAgICAgICAgICAgICBl
bnN1cmVTZWdtZW50c0ZvcihzaXplKTsKKyAgICAgICAgICAgIHNpemVfdCBvbGRTaXplID0gbV9z
aXplOwogICAgICAgICAgICAgbV9zaXplID0gc2l6ZTsKKyAgICAgICAgICAgIGZvciAoc2l6ZV90
IGkgPSBvbGRTaXplOyBpIDwgbV9zaXplOyArK2kpCisgICAgICAgICAgICAgICAgbmV3IChOb3RO
dWxsLCAmYXQoaSkpIFQoKTsKICAgICAgICAgfQogCiAgICAgICAgIHZvaWQgY2xlYXIoKQpAQCAt
MTg2LDEyICsxNzEsMTIgQEAgbmFtZXNwYWNlIFdURiB7CiAKICAgICAgICAgSXRlcmF0b3IgYmVn
aW4oKQogICAgICAgICB7Ci0gICAgICAgICAgICByZXR1cm4gSXRlcmF0b3IoKnRoaXMsIDAsIG1f
c2l6ZSA/IDAgOiBTZWdtZW50U2l6ZSk7CisgICAgICAgICAgICByZXR1cm4gSXRlcmF0b3IoKnRo
aXMsIDApOwogICAgICAgICB9CiAKICAgICAgICAgSXRlcmF0b3IgZW5kKCkKICAgICAgICAgewot
ICAgICAgICAgICAgcmV0dXJuIEl0ZXJhdG9yKCp0aGlzLCAwLCBTZWdtZW50U2l6ZSk7CisgICAg
ICAgICAgICByZXR1cm4gSXRlcmF0b3IoKnRoaXMsIG1fc2l6ZSk7CiAgICAgICAgIH0KICAgICAg
ICAgCiAgICAgICAgIHZvaWQgc2hyaW5rVG9GaXQoKQpAQCAtMjAwLDEyICsxODUsMTYgQEAgbmFt
ZXNwYWNlIFdURiB7CiAgICAgICAgIH0KIAogICAgIHByaXZhdGU6Ci0gICAgICAgIHR5cGVkZWYg
VmVjdG9yPFQsIFNlZ21lbnRTaXplPiBTZWdtZW50OworICAgICAgICBzdHJ1Y3QgU2VnbWVudCB7
CisgICAgICAgICAgICBUIGVudHJpZXNbMF07CisgICAgICAgIH07CiAKICAgICAgICAgdm9pZCBk
ZWxldGVBbGxTZWdtZW50cygpCiAgICAgICAgIHsKLSAgICAgICAgICAgIGZvciAoc2l6ZV90IGkg
PSAwOyBpIDwgbV9zZWdtZW50cy5zaXplKCk7IGkrKykKLSAgICAgICAgICAgICAgICBkZWxldGUg
bV9zZWdtZW50c1tpXTsKKyAgICAgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9zaXpl
OyArK2kpCisgICAgICAgICAgICAgICAgYXQoaSkuflQoKTsKKyAgICAgICAgICAgIGZvciAoc2l6
ZV90IGkgPSAwOyBpIDwgbV9zZWdtZW50cy5zaXplKCk7ICsraSkKKyAgICAgICAgICAgICAgICBm
YXN0RnJlZShtX3NlZ21lbnRzW2ldKTsKICAgICAgICAgfQogCiAgICAgICAgIGJvb2wgc2VnbWVu
dEV4aXN0c0ZvcihzaXplX3QgaW5kZXgpCkBAIC0yMjgsMjQgKzIxNywyMyBAQCBuYW1lc3BhY2Ug
V1RGIHsKICAgICAgICAgICAgIHNpemVfdCBzZWdtZW50Q291bnQgPSAobV9zaXplICsgU2VnbWVu
dFNpemUgLSAxKSAvIFNlZ21lbnRTaXplOwogICAgICAgICAgICAgc2l6ZV90IG5lZWRlZFNlZ21l
bnRDb3VudCA9IChzaXplICsgU2VnbWVudFNpemUgLSAxKSAvIFNlZ21lbnRTaXplOwogCi0gICAg
ICAgICAgICAvLyBGaWxsIHVwIHRvIE4gLSAxIHNlZ21lbnRzLgotICAgICAgICAgICAgc2l6ZV90
IGVuZCA9IG5lZWRlZFNlZ21lbnRDb3VudCAtIDE7Ci0gICAgICAgICAgICBmb3IgKHNpemVfdCBp
ID0gc2VnbWVudENvdW50ID8gc2VnbWVudENvdW50IC0gMSA6IDA7IGkgPCBlbmQ7ICsraSkKLSAg
ICAgICAgICAgICAgICBlbnN1cmVTZWdtZW50KGksIFNlZ21lbnRTaXplKTsKLQotICAgICAgICAg
ICAgLy8gR3JvdyBzZWdtZW50IE4gdG8gYWNjb21vZGF0ZSB0aGUgcmVtYWluZGVyLgotICAgICAg
ICAgICAgZW5zdXJlU2VnbWVudChlbmQsIHN1YnNjcmlwdEZvcihzaXplIC0gMSkgKyAxKTsKKyAg
ICAgICAgICAgIGZvciAoc2l6ZV90IGkgPSBzZWdtZW50Q291bnQgPyBzZWdtZW50Q291bnQgLSAx
IDogMDsgaSA8IG5lZWRlZFNlZ21lbnRDb3VudDsgKytpKQorICAgICAgICAgICAgICAgIGVuc3Vy
ZVNlZ21lbnQoaSk7CiAgICAgICAgIH0KIAotICAgICAgICB2b2lkIGVuc3VyZVNlZ21lbnQoc2l6
ZV90IHNlZ21lbnRJbmRleCwgc2l6ZV90IHNpemUpCisgICAgICAgIHZvaWQgZW5zdXJlU2VnbWVu
dChzaXplX3Qgc2VnbWVudEluZGV4KQogICAgICAgICB7CiAgICAgICAgICAgICBBU1NFUlRfV0lU
SF9TRUNVUklUWV9JTVBMSUNBVElPTihzZWdtZW50SW5kZXggPD0gbV9zZWdtZW50cy5zaXplKCkp
OwogICAgICAgICAgICAgaWYgKHNlZ21lbnRJbmRleCA9PSBtX3NlZ21lbnRzLnNpemUoKSkKLSAg
ICAgICAgICAgICAgICBtX3NlZ21lbnRzLmFwcGVuZChuZXcgU2VnbWVudCk7Ci0gICAgICAgICAg
ICBtX3NlZ21lbnRzW3NlZ21lbnRJbmRleF0tPmdyb3coc2l6ZSk7CisgICAgICAgICAgICAgICAg
YWxsb2NhdGVTZWdtZW50KCk7CisgICAgICAgIH0KKworICAgICAgICB2b2lkIGFsbG9jYXRlU2Vn
bWVudCgpCisgICAgICAgIHsKKyAgICAgICAgICAgIG1fc2VnbWVudHMuYXBwZW5kKHN0YXRpY19j
YXN0PFNlZ21lbnQqPihmYXN0TWFsbG9jKHNpemVvZihUKSAqIFNlZ21lbnRTaXplKSkpOwogICAg
ICAgICB9CiAKLSAgICAgICAgc2l6ZV90IG1fc2l6ZTsKKyAgICAgICAgc2l6ZV90IG1fc2l6ZSB7
IDAgfTsKICAgICAgICAgVmVjdG9yPFNlZ21lbnQqPiBtX3NlZ21lbnRzOwogICAgIH07CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>