<?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>19442</bug_id>
          
          <creation_ts>2008-06-08 18:25:26 -0700</creation_ts>
          <short_desc>JavaScript array implementation doesn&apos;t maintain m_numValuesInVector when sorting</short_desc>
          <delta_ts>2008-06-11 12:39:00 -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>528+ (Nightly build)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.5</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="Darin Adler">darin</reporter>
          <assigned_to name="Darin Adler">darin</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>82699</commentid>
    <comment_count>0</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2008-06-08 18:25:26 -0700</bug_when>
    <thetext>I have a patch that add some consistency checks and fixes this issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>82700</commentid>
    <comment_count>1</comment_count>
      <attachid>21586</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2008-06-08 19:17:30 -0700</bug_when>
    <thetext>Created attachment 21586
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>82789</commentid>
    <comment_count>2</comment_count>
      <attachid>21586</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2008-06-09 20:17:31 -0700</bug_when>
    <thetext>Comment on attachment 21586
patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>83006</commentid>
    <comment_count>3</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2008-06-11 12:39:00 -0700</bug_when>
    <thetext>Committed revision 34496.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>21586</attachid>
            <date>2008-06-08 19:17:30 -0700</date>
            <delta_ts>2008-06-09 20:17:31 -0700</delta_ts>
            <desc>patch</desc>
            <filename>NumValuesInVectorPatch.txt</filename>
            <type>text/plain</type>
            <size>13826</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDM0NDU3KQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjcgQEAKKzIwMDgtMDYtMDggIERhcmluIEFk
bGVyICA8ZGFyaW5AYXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIC0gZml4IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xOTQ0MgorICAgICAgICAgIEphdmFTY3JpcHQgYXJyYXkgaW1wbGVtZW50YXRpb24gZG9l
c24ndCBtYWludGFpbiBtX251bVZhbHVlc0luVmVjdG9yIHdoZW4gc29ydGluZworCisgICAgICAg
ICoga2pzL2FycmF5X2luc3RhbmNlLmNwcDoKKyAgICAgICAgKEtKUzo6QXJyYXlJbnN0YW5jZTo6
Y2hlY2tDb25zaXN0ZW5jeSk6IEFkZGVkLiBFbXB0eSBpbmxpbmUgdmVyc2lvbiBmb3Igd2hlbgor
ICAgICAgICBjb25zaXN0ZW5jeSBjaGVja3MgYXJlIHR1cm5lZCBvZmYuCisgICAgICAgIChLSlM6
OkFycmF5SW5zdGFuY2U6OkFycmF5SW5zdGFuY2UpOiBDaGVjayBjb25zaXN0ZW5jeSBhZnRlciBj
b25zdHJ1Y3Rpb24uCisgICAgICAgIChLSlM6OkFycmF5SW5zdGFuY2U6On5BcnJheUluc3RhbmNl
KTogQ2hlY2sgY29uc2lzdGVuY3kgYmVmb3JlIGRlc3RydWN0aW9uLgorICAgICAgICAoS0pTOjpB
cnJheUluc3RhbmNlOjpwdXQpOiBDaGVjayBjb25zaXN0ZW5jeSBiZWZvcmUgYW5kIGFmdGVyLgor
ICAgICAgICAoS0pTOjpBcnJheUluc3RhbmNlOjpkZWxldGVQcm9wZXJ0eSk6IERpdHRvLgorICAg
ICAgICAoS0pTOjpBcnJheUluc3RhbmNlOjpzZXRMZW5ndGgpOiBEaXR0by4KKyAgICAgICAgKEtK
Uzo6Y29tcGFyZUJ5U3RyaW5nUGFpckZvclFTb3J0KTogVXNlIHR5cGVkZWYgZm9yIGNsYXJpdHku
CisgICAgICAgIChLSlM6OkFycmF5SW5zdGFuY2U6OnNvcnQpOiBDaGVjayBjb25zaXN0ZW5jeSBi
ZWZvcmUgYW5kIGFmdGVyLiBBbHNvIGJyb2tlIHRoZSBsb29wCisgICAgICAgIHRvIHNldCB1cCBz
b3J0aW5nIGludG8gdHdvIHNlcGFyYXRlIHBhc3Nlcy4gQWRkZWQgRklYTUVzIGFib3V0IHZhcmlv
dXMgZXhjZXB0aW9uCisgICAgICAgIHNhZmV0eSBpc3N1ZXMuIEFkZGVkIGNvZGUgdG8gc2V0IG1f
bnVtVmFsdWVzSW5WZWN0b3IgYWZ0ZXIgc29ydGluZy4KKyAgICAgICAgKEtKUzo6QXJyYXlJbnN0
YW5jZTo6Y29tcGFjdEZvclNvcnRpbmcpOiBEaXR0by4KKworICAgICAgICAqIGtqcy9hcnJheV9p
bnN0YW5jZS5oOiBBZGRlZCBhIGRlZmluaXRpb24gb2YgYW4gZW51bSBmb3IgdGhlIHR5cGVzIG9m
IGNvbnNpc3RlbmN5CisgICAgICAgIGNoZWNrIGFuZCBhIGRlY2xhcmF0aW9uIG9mIHRoZSBjb25z
aXN0ZW5jeSBjaGVja2luZyBmdW5jdGlvbi4KKwogMjAwOC0wNi0wOCAgQ2FtZXJvbiBad2FyaWNo
ICA8Y3d6d2FyaWNoQHV3YXRlcmxvby5jYT4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbi4K
SW5kZXg6IEphdmFTY3JpcHRDb3JlL2tqcy9hcnJheV9pbnN0YW5jZS5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gSmF2YVNjcmlwdENvcmUva2pzL2FycmF5X2luc3RhbmNlLmNwcAkocmV2aXNpb24gMzQ0NTcp
CisrKyBKYXZhU2NyaXB0Q29yZS9ranMvYXJyYXlfaW5zdGFuY2UuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0yNyw2ICsyNyw4IEBACiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KICNpbmNsdWRl
IDx3dGYvQVZMVHJlZS5oPgogCisjZGVmaW5lIENIRUNLX0FSUkFZX0NPTlNJU1RFTkNZIDAKKwog
dXNpbmcgbmFtZXNwYWNlIHN0ZDsKIAogbmFtZXNwYWNlIEtKUyB7CkBAIC00MCw3ICs0Miw3IEBA
IHN0cnVjdCBBcnJheVN0b3JhZ2UgewogICAgIEpTVmFsdWUqIG1fdmVjdG9yWzFdOwogfTsKIAot
Ly8gMHhGRkZGRkZGRiBpcyBhIGJpdCB3ZWlyZCAtLSBpcyBub3QgYW4gYXJyYXkgaW5kZXggZXZl
biB0aG91Z2ggaXQncyBhbiBpbnRlZ2VyCisvLyAweEZGRkZGRkZGIGlzIGEgYml0IHdlaXJkIC0t
IGlzIG5vdCBhbiBhcnJheSBpbmRleCBldmVuIHRob3VnaCBpdCdzIGFuIGludGVnZXIuCiBzdGF0
aWMgY29uc3QgdW5zaWduZWQgbWF4QXJyYXlJbmRleCA9IDB4RkZGRkZGRkVVOwogCiAvLyBPdXIg
cG9saWN5IGZvciB3aGVuIHRvIHVzZSBhIHZlY3RvciBhbmQgd2hlbiB0byB1c2UgYSBzcGFyc2Ug
bWFwLgpAQCAtNjksNiArNzEsMTQgQEAgc3RhdGljIGlubGluZSBib29sIGlzRGVuc2VFbm91Z2hG
b3JWZWN0bwogICAgIHJldHVybiBsZW5ndGggLyBtaW5EZW5zaXR5TXVsdGlwbGllciA8PSBudW1W
YWx1ZXM7CiB9CiAKKyNpZiAhQ0hFQ0tfQVJSQVlfQ09OU0lTVEVOQ1kKKworaW5saW5lIHZvaWQg
QXJyYXlJbnN0YW5jZTo6Y2hlY2tDb25zaXN0ZW5jeShDb25zaXN0ZW5jeUNoZWNrVHlwZSkKK3sK
K30KKworI2VuZGlmCisKIEFycmF5SW5zdGFuY2U6OkFycmF5SW5zdGFuY2UoSlNPYmplY3QqIHBy
b3RvdHlwZSwgdW5zaWduZWQgaW5pdGlhbExlbmd0aCkKICAgICA6IEpTT2JqZWN0KHByb3RvdHlw
ZSkKIHsKQEAgLTc5LDYgKzg5LDggQEAgQXJyYXlJbnN0YW5jZTo6QXJyYXlJbnN0YW5jZShKU09i
amVjdCogcAogICAgIG1fc3RvcmFnZSA9IHN0YXRpY19jYXN0PEFycmF5U3RvcmFnZSo+KGZhc3Ra
ZXJvZWRNYWxsb2Moc3RvcmFnZVNpemUoaW5pdGlhbENhcGFjaXR5KSkpOwogCiAgICAgQ29sbGVj
dG9yOjpyZXBvcnRFeHRyYU1lbW9yeUNvc3QoaW5pdGlhbENhcGFjaXR5ICogc2l6ZW9mKEpTVmFs
dWUqKSk7CisKKyAgICBjaGVja0NvbnNpc3RlbmN5KCk7CiB9CiAKIEFycmF5SW5zdGFuY2U6OkFy
cmF5SW5zdGFuY2UoSlNPYmplY3QqIHByb3RvdHlwZSwgY29uc3QgTGlzdCYgbGlzdCkKQEAgLTEw
MywxMCArMTE1LDE0IEBAIEFycmF5SW5zdGFuY2U6OkFycmF5SW5zdGFuY2UoSlNPYmplY3QqIHAK
IAogICAgIC8vIFdoZW4gdGhlIGFycmF5IGlzIGNyZWF0ZWQgbm9uLWVtcHR5LCBpdHMgY2VsbHMg
YXJlIGZpbGxlZCwgc28gaXQncyByZWFsbHkgbm8gd29yc2UgdGhhbgogICAgIC8vIGEgcHJvcGVy
dHkgbWFwLiBUaGVyZWZvcmUgZG9uJ3QgcmVwb3J0IGV4dHJhIG1lbW9yeSBjb3N0LgorCisgICAg
Y2hlY2tDb25zaXN0ZW5jeSgpOwogfQogCiBBcnJheUluc3RhbmNlOjp+QXJyYXlJbnN0YW5jZSgp
CiB7CisgICAgY2hlY2tDb25zaXN0ZW5jeShEZXN0cnVjdG9yQ29uc2lzdGVuY3lDaGVjayk7CisK
ICAgICBkZWxldGUgbV9zdG9yYWdlLT5tX3NwYXJzZVZhbHVlTWFwOwogICAgIGZhc3RGcmVlKG1f
c3RvcmFnZSk7CiB9CkBAIC0yMDksNiArMjI1LDggQEAgdm9pZCBBcnJheUluc3RhbmNlOjpwdXQo
RXhlY1N0YXRlKiBleGVjLAogCiB2b2lkIEFycmF5SW5zdGFuY2U6OnB1dChFeGVjU3RhdGUqIGV4
ZWMsIHVuc2lnbmVkIGksIEpTVmFsdWUqIHZhbHVlKQogeworICAgIGNoZWNrQ29uc2lzdGVuY3ko
KTsKKwogICAgIHVuc2lnbmVkIGxlbmd0aCA9IG1fbGVuZ3RoOwogICAgIGlmIChpID49IGxlbmd0
aCkgewogICAgICAgICBpZiAoaSA+IG1heEFycmF5SW5kZXgpIHsKQEAgLTIyNSw2ICsyNDMsNyBA
QCB2b2lkIEFycmF5SW5zdGFuY2U6OnB1dChFeGVjU3RhdGUqIGV4ZWMsCiAgICAgICAgIEpTVmFs
dWUqJiB2YWx1ZVNsb3QgPSBzdG9yYWdlLT5tX3ZlY3RvcltpXTsKICAgICAgICAgc3RvcmFnZS0+
bV9udW1WYWx1ZXNJblZlY3RvciArPSAhdmFsdWVTbG90OwogICAgICAgICB2YWx1ZVNsb3QgPSB2
YWx1ZTsKKyAgICAgICAgY2hlY2tDb25zaXN0ZW5jeSgpOwogICAgICAgICByZXR1cm47CiAgICAg
fQogCkBAIC0yNTAsNiArMjY5LDcgQEAgdm9pZCBBcnJheUluc3RhbmNlOjpwdXQoRXhlY1N0YXRl
KiBleGVjLAogICAgICAgICBzdG9yYWdlID0gbV9zdG9yYWdlOwogICAgICAgICArK3N0b3JhZ2Ut
Pm1fbnVtVmFsdWVzSW5WZWN0b3I7CiAgICAgICAgIHN0b3JhZ2UtPm1fdmVjdG9yW2ldID0gdmFs
dWU7CisgICAgICAgIGNoZWNrQ29uc2lzdGVuY3koKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0K
IApAQCAtMjk0LDYgKzMxNCw4IEBAIHZvaWQgQXJyYXlJbnN0YW5jZTo6cHV0KEV4ZWNTdGF0ZSog
ZXhlYywKICAgICBzdG9yYWdlLT5tX251bVZhbHVlc0luVmVjdG9yID0gbmV3TnVtVmFsdWVzSW5W
ZWN0b3I7CiAKICAgICBtX3N0b3JhZ2UgPSBzdG9yYWdlOworCisgICAgY2hlY2tDb25zaXN0ZW5j
eSgpOwogfQogCiBib29sIEFycmF5SW5zdGFuY2U6OmRlbGV0ZVByb3BlcnR5KEV4ZWNTdGF0ZSog
ZXhlYywgY29uc3QgSWRlbnRpZmllciYgcHJvcGVydHlOYW1lKQpAQCAtMzExLDYgKzMzMyw4IEBA
IGJvb2wgQXJyYXlJbnN0YW5jZTo6ZGVsZXRlUHJvcGVydHkoRXhlY1MKIAogYm9vbCBBcnJheUlu
c3RhbmNlOjpkZWxldGVQcm9wZXJ0eShFeGVjU3RhdGUqIGV4ZWMsIHVuc2lnbmVkIGkpCiB7Cisg
ICAgY2hlY2tDb25zaXN0ZW5jeSgpOworCiAgICAgQXJyYXlTdG9yYWdlKiBzdG9yYWdlID0gbV9z
dG9yYWdlOwogCiAgICAgaWYgKGkgPCBtX3ZlY3Rvckxlbmd0aCkgewpAQCAtMzE4LDYgKzM0Miw3
IEBAIGJvb2wgQXJyYXlJbnN0YW5jZTo6ZGVsZXRlUHJvcGVydHkoRXhlY1MKICAgICAgICAgYm9v
bCBoYWRWYWx1ZSA9IHZhbHVlU2xvdDsKICAgICAgICAgdmFsdWVTbG90ID0gMDsKICAgICAgICAg
c3RvcmFnZS0+bV9udW1WYWx1ZXNJblZlY3RvciAtPSBoYWRWYWx1ZTsKKyAgICAgICAgY2hlY2tD
b25zaXN0ZW5jeSgpOwogICAgICAgICByZXR1cm4gaGFkVmFsdWU7CiAgICAgfQogCkBAIC0zMjYs
MTEgKzM1MSwxNCBAQCBib29sIEFycmF5SW5zdGFuY2U6OmRlbGV0ZVByb3BlcnR5KEV4ZWNTCiAg
ICAgICAgICAgICBTcGFyc2VBcnJheVZhbHVlTWFwOjppdGVyYXRvciBpdCA9IG1hcC0+ZmluZChp
KTsKICAgICAgICAgICAgIGlmIChpdCAhPSBtYXAtPmVuZCgpKSB7CiAgICAgICAgICAgICAgICAg
bWFwLT5yZW1vdmUoaXQpOworICAgICAgICAgICAgICAgIGNoZWNrQ29uc2lzdGVuY3koKTsKICAg
ICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAg
IH0KIAorICAgIGNoZWNrQ29uc2lzdGVuY3koKTsKKwogICAgIGlmIChpID4gbWF4QXJyYXlJbmRl
eCkKICAgICAgICAgcmV0dXJuIGRlbGV0ZVByb3BlcnR5KGV4ZWMsIElkZW50aWZpZXI6OmZyb20o
aSkpOwogCkBAIC0zNDAsNyArMzY4LDggQEAgYm9vbCBBcnJheUluc3RhbmNlOjpkZWxldGVQcm9w
ZXJ0eShFeGVjUwogdm9pZCBBcnJheUluc3RhbmNlOjpnZXRQcm9wZXJ0eU5hbWVzKEV4ZWNTdGF0
ZSogZXhlYywgUHJvcGVydHlOYW1lQXJyYXkmIHByb3BlcnR5TmFtZXMpCiB7CiAgICAgLy8gRklY
TUU6IEZpbGxpbmcgUHJvcGVydHlOYW1lQXJyYXkgd2l0aCBhbiBpZGVudGlmaWVyIGZvciBldmVy
eSBpbnRlZ2VyCi0gICAgLy8gaXMgaW5jcmVkaWJseSBpbmVmZmljaWVudCBmb3IgbGFyZ2UgYXJy
YXlzLiBXZSBuZWVkIGEgZGlmZmVyZW50IGFwcHJvYWNoLgorICAgIC8vIGlzIGluY3JlZGlibHkg
aW5lZmZpY2llbnQgZm9yIGxhcmdlIGFycmF5cy4gV2UgbmVlZCBhIGRpZmZlcmVudCBhcHByb2Fj
aCwKKyAgICAvLyB3aGljaCBhbG1vc3QgY2VydGFpbmx5IG1lYW5zIGEgZGlmZmVyZW50IHN0cnVj
dHVyZSBmb3IgUHJvcGVydHlOYW1lQXJyYXkuCiAKICAgICBBcnJheVN0b3JhZ2UqIHN0b3JhZ2Ug
PSBtX3N0b3JhZ2U7CiAKQEAgLTM4NSw2ICs0MTQsOCBAQCBib29sIEFycmF5SW5zdGFuY2U6Omlu
Y3JlYXNlVmVjdG9yTGVuZ3RoCiAKIHZvaWQgQXJyYXlJbnN0YW5jZTo6c2V0TGVuZ3RoKHVuc2ln
bmVkIG5ld0xlbmd0aCkKIHsKKyAgICBjaGVja0NvbnNpc3RlbmN5KCk7CisKICAgICBBcnJheVN0
b3JhZ2UqIHN0b3JhZ2UgPSBtX3N0b3JhZ2U7CiAKICAgICB1bnNpZ25lZCBsZW5ndGggPSBtX2xl
bmd0aDsKQEAgLTQxMyw2ICs0NDQsOCBAQCB2b2lkIEFycmF5SW5zdGFuY2U6OnNldExlbmd0aCh1
bnNpZ25lZCBuCiAgICAgfQogCiAgICAgbV9sZW5ndGggPSBuZXdMZW5ndGg7CisKKyAgICBjaGVj
a0NvbnNpc3RlbmN5KCk7CiB9CiAKIHZvaWQgQXJyYXlJbnN0YW5jZTo6bWFyaygpCkBAIC00Mzgs
MTAgKzQ3MSwxMiBAQCB2b2lkIEFycmF5SW5zdGFuY2U6Om1hcmsoKQogICAgIH0KIH0KIAordHlw
ZWRlZiBzdGQ6OnBhaXI8SlNWYWx1ZSosIFVTdHJpbmc+IEFycmF5UVNvcnRQYWlyOworCiBzdGF0
aWMgaW50IGNvbXBhcmVCeVN0cmluZ1BhaXJGb3JRU29ydChjb25zdCB2b2lkKiBhLCBjb25zdCB2
b2lkKiBiKQogewotICAgIGNvbnN0IHN0ZDo6cGFpcjxKU1ZhbHVlKiwgVVN0cmluZz4qIHZhID0g
c3RhdGljX2Nhc3Q8Y29uc3Qgc3RkOjpwYWlyPEpTVmFsdWUqLCBVU3RyaW5nPio+KGEpOwotICAg
IGNvbnN0IHN0ZDo6cGFpcjxKU1ZhbHVlKiwgVVN0cmluZz4qIHZiID0gc3RhdGljX2Nhc3Q8Y29u
c3Qgc3RkOjpwYWlyPEpTVmFsdWUqLCBVU3RyaW5nPio+KGIpOworICAgIGNvbnN0IEFycmF5UVNv
cnRQYWlyKiB2YSA9IHN0YXRpY19jYXN0PGNvbnN0IEFycmF5UVNvcnRQYWlyKj4oYSk7CisgICAg
Y29uc3QgQXJyYXlRU29ydFBhaXIqIHZiID0gc3RhdGljX2Nhc3Q8Y29uc3QgQXJyYXlRU29ydFBh
aXIqPihiKTsKICAgICByZXR1cm4gY29tcGFyZSh2YS0+c2Vjb25kLCB2Yi0+c2Vjb25kKTsKIH0K
IApAQCAtNDYxLDcgKzQ5Niw3IEBAIHZvaWQgQXJyYXlJbnN0YW5jZTo6c29ydChFeGVjU3RhdGUq
IGV4ZWMKICAgICAvLyBidWZmZXIuIEJlc2lkZXMsIHRoaXMgcHJvdGVjdHMgdXMgZnJvbSBjcmFz
aGluZyBpZiBzb21lIG9iamVjdHMgaGF2ZSBjdXN0b20gdG9TdHJpbmcgbWV0aG9kcyB0aGF0IHJl
dHVybgogICAgIC8vIHJhbmRvbSBvciBvdGhlcndpc2UgY2hhbmdpbmcgcmVzdWx0cywgZWZmZWN0
aXZlbHkgbWFraW5nIGNvbXBhcmUgZnVuY3Rpb24gaW5jb25zaXN0ZW50LgogCi0gICAgVmVjdG9y
PHN0ZDo6cGFpcjxKU1ZhbHVlKiwgVVN0cmluZz4gPiB2YWx1ZXMobGVuZ3RoTm90SW5jbHVkaW5n
VW5kZWZpbmVkKTsKKyAgICBWZWN0b3I8QXJyYXlRU29ydFBhaXI+IHZhbHVlcyhsZW5ndGhOb3RJ
bmNsdWRpbmdVbmRlZmluZWQpOwogICAgIGlmICghdmFsdWVzLmJlZ2luKCkpIHsKICAgICAgICAg
ZXhlYy0+c2V0RXhjZXB0aW9uKEVycm9yOjpjcmVhdGUoZXhlYywgR2VuZXJhbEVycm9yLCAiT3V0
IG9mIG1lbW9yeSIpKTsKICAgICAgICAgcmV0dXJuOwpAQCAtNDcxLDkgKzUwNiwxNyBAQCB2b2lk
IEFycmF5SW5zdGFuY2U6OnNvcnQoRXhlY1N0YXRlKiBleGVjCiAgICAgICAgIEpTVmFsdWUqIHZh
bHVlID0gbV9zdG9yYWdlLT5tX3ZlY3RvcltpXTsKICAgICAgICAgQVNTRVJUKCF2YWx1ZS0+aXNV
bmRlZmluZWQoKSk7CiAgICAgICAgIHZhbHVlc1tpXS5maXJzdCA9IHZhbHVlOwotICAgICAgICB2
YWx1ZXNbaV0uc2Vjb25kID0gdmFsdWUtPnRvU3RyaW5nKGV4ZWMpOwogICAgIH0KIAorICAgIC8v
IEZJWE1FOiBXaGlsZSBjYWxsaW5nIHRoZXNlIHRvU3RyaW5nIGZ1bmN0aW9ucywgdGhlIGFycmF5
IGNvdWxkIGJlIG11dGF0ZWQuCisgICAgLy8gSW4gdGhhdCBjYXNlLCBvYmplY3RzIHBvaW50ZWQg
dG8gYnkgdmFsdWVzIGluIHRoaXMgdmVjdG9yIG1pZ2h0IGdldCBnYXJiYWdlLWNvbGxlY3RlZCEK
KworICAgIC8vIEZJWE1FOiBUaGUgZm9sbG93aW5nIGxvb3AgY29udGludWVzIHRvIGNhbGwgdG9T
dHJpbmcgb24gc3Vic2VxdWVudCB2YWx1ZXMgZXZlbiBhZnRlcgorICAgIC8vIGEgdG9TdHJpbmcg
Y2FsbCByYWlzZXMgYW4gZXhjZXB0aW9uLgorCisgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBs
ZW5ndGhOb3RJbmNsdWRpbmdVbmRlZmluZWQ7IGkrKykKKyAgICAgICAgdmFsdWVzW2ldLnNlY29u
ZCA9IHZhbHVlc1tpXS5maXJzdC0+dG9TdHJpbmcoZXhlYyk7CisKICAgICBpZiAoZXhlYy0+aGFk
RXhjZXB0aW9uKCkpCiAgICAgICAgIHJldHVybjsKIApAQCAtNDgxLDE0ICs1MjQsMjAgQEAgdm9p
ZCBBcnJheUluc3RhbmNlOjpzb3J0KEV4ZWNTdGF0ZSogZXhlYwogICAgIC8vIHRoYW4gTyhOIGxv
ZyBOKS4KIAogI2lmIEhBVkUoTUVSR0VTT1JUKQotICAgIG1lcmdlc29ydCh2YWx1ZXMuYmVnaW4o
KSwgdmFsdWVzLnNpemUoKSwgc2l6ZW9mKHN0ZDo6cGFpcjxKU1ZhbHVlKiwgVVN0cmluZz4pLCBj
b21wYXJlQnlTdHJpbmdQYWlyRm9yUVNvcnQpOworICAgIG1lcmdlc29ydCh2YWx1ZXMuYmVnaW4o
KSwgdmFsdWVzLnNpemUoKSwgc2l6ZW9mKEFycmF5UVNvcnRQYWlyKSwgY29tcGFyZUJ5U3RyaW5n
UGFpckZvclFTb3J0KTsKICNlbHNlCi0gICAgLy8gRklYTUU6IFFTb3J0IG1heSBub3QgYmUgc3Rh
YmxlIGluIHNvbWUgaW1wbGVtZW50YXRpb25zLiBFQ01BU2NyaXB0LTI2MiBkb2VzIG5vdCByZXF1
aXJlIHRoaXMsIGJ1dCBpbiBwcmFjdGljZSwgYnJvd3NlcnMgcGVyZm9ybSBzdGFibGUgc29ydC4K
LSAgICBxc29ydCh2YWx1ZXMuYmVnaW4oKSwgdmFsdWVzLnNpemUoKSwgc2l6ZW9mKHN0ZDo6cGFp
cjxKU1ZhbHVlKiwgVVN0cmluZz4pLCBjb21wYXJlQnlTdHJpbmdQYWlyRm9yUVNvcnQpOworICAg
IC8vIEZJWE1FOiBUaGUgcXNvcnQgbGlicmFyeSBmdW5jdGlvbiBpcyBsaWtlbHkgdG8gbm90IGJl
IGEgc3RhYmxlIHNvcnQuCisgICAgLy8gRUNNQVNjcmlwdC0yNjIgZG9lcyBub3Qgc3BlY2lmeSBh
IHN0YWJsZSBzb3J0LCBidXQgaW4gcHJhY3RpY2UsIGJyb3dzZXJzIHBlcmZvcm0gYSBzdGFibGUg
c29ydC4KKyAgICBxc29ydCh2YWx1ZXMuYmVnaW4oKSwgdmFsdWVzLnNpemUoKSwgc2l6ZW9mKEFy
cmF5UVNvcnRQYWlyKSwgY29tcGFyZUJ5U3RyaW5nUGFpckZvclFTb3J0KTsKICNlbmRpZgogCisg
ICAgLy8gRklYTUU6IElmIHRoZSB0b1N0cmluZyBmdW5jdGlvbiBjaGFuZ2VkIHRoZSBsZW5ndGgg
b2YgdGhlIGFycmF5LCB0aGlzIG1pZ2h0IGJlCisgICAgLy8gbW9kaWZ5aW5nIHRoZSB2ZWN0b3Ig
aW5jb3JyZWN0bHkuCisKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGxlbmd0aE5vdEluY2x1
ZGluZ1VuZGVmaW5lZDsgaSsrKQogICAgICAgICBtX3N0b3JhZ2UtPm1fdmVjdG9yW2ldID0gdmFs
dWVzW2ldLmZpcnN0OworCisgICAgY2hlY2tDb25zaXN0ZW5jeShTb3J0Q29uc2lzdGVuY3lDaGVj
ayk7CiB9CiAKIHN0cnVjdCBBVkxUcmVlTm9kZUZvckFycmF5Q29tcGFyZSB7CkBAIC01NTgsNiAr
NjA3LDEwIEBAIHN0cnVjdCBBVkxUcmVlQWJzdHJhY3RvckZvckFycmF5Q29tcGFyZSAKIAogdm9p
ZCBBcnJheUluc3RhbmNlOjpzb3J0KEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIGNvbXBhcmVG
dW5jdGlvbikKIHsKKyAgICBjaGVja0NvbnNpc3RlbmN5KCk7CisKKyAgICAvLyBGSVhNRTogVGhp
cyBpZ25vcmVzIGV4Y2VwdGlvbnMgcmFpc2VkIGluIHRoZSBjb21wYXJlIGZ1bmN0aW9uIG9yIGlu
IHRvTnVtYmVyLgorCiAgICAgLy8gVGhlIG1heGltdW0gdHJlZSBkZXB0aCBpcyBjb21waWxlZCBp
biAtIGJ1dCB0aGUgY2FsbGVyIGlzIGNsZWFybHkgdXAgdG8gbm8gZ29vZAogICAgIC8vIGlmIGEg
bGFyZ2VyIGFycmF5IGlzIHBhc3NlZC4KICAgICBBU1NFUlQobV9sZW5ndGggPD0gc3RhdGljX2Nh
c3Q8dW5zaWduZWQ+KHN0ZDo6bnVtZXJpY19saW1pdHM8aW50Pjo6bWF4KCkpKTsKQEAgLTU4MCw2
ICs2MzMsOSBAQCB2b2lkIEFycmF5SW5zdGFuY2U6OnNvcnQoRXhlY1N0YXRlKiBleGVjCiAgICAg
ICAgIHJldHVybjsKICAgICB9CiAKKyAgICAvLyBGSVhNRTogSWYgdGhlIGNvbXBhcmUgZnVuY3Rp
b24gbW9kaWZpZXMgdGhlIGFycmF5LCB0aGUgdmVjdG9yLCBtYXAsIGV0Yy4gY291bGQgYmUgbW9k
aWZpZWQKKyAgICAvLyByaWdodCBvdXQgZnJvbSB1bmRlciB1cyB3aGlsZSB3ZSdyZSBidWlsZGlu
ZyB0aGUgdHJlZSBoZXJlLgorCiAgICAgdW5zaWduZWQgbnVtRGVmaW5lZCA9IDA7CiAgICAgdW5z
aWduZWQgbnVtVW5kZWZpbmVkID0gMDsKIApAQCAtNjI3LDYgKzY4Myw5IEBAIHZvaWQgQXJyYXlJ
bnN0YW5jZTo6c29ydChFeGVjU3RhdGUqIGV4ZWMKIAogICAgIEFTU0VSVCh0cmVlLmFic3RyYWN0
b3IoKS5tX25vZGVzLnNpemUoKSA+PSBudW1EZWZpbmVkKTsKIAorICAgIC8vIEZJWE1FOiBJZiB0
aGUgY29tcGFyZSBmdW5jdGlvbiBjaGFuZ2VkIHRoZSBsZW5ndGggb2YgdGhlIGFycmF5LCB0aGUg
Zm9sbG93aW5nIG1pZ2h0IGJlCisgICAgLy8gbW9kaWZ5aW5nIHRoZSB2ZWN0b3IgaW5jb3JyZWN0
bHkuCisKICAgICAvLyBDb3B5IHRoZSB2YWx1ZXMgYmFjayBpbnRvIG1fc3RvcmFnZS4KICAgICBB
VkxUcmVlPEFWTFRyZWVBYnN0cmFjdG9yRm9yQXJyYXlDb21wYXJlLCA0ND46Okl0ZXJhdG9yIGl0
ZXI7CiAgICAgaXRlci5zdGFydF9pdGVyX2xlYXN0KHRyZWUpOwpAQCAtNjQyLDEwICs3MDEsMTYg
QEAgdm9pZCBBcnJheUluc3RhbmNlOjpzb3J0KEV4ZWNTdGF0ZSogZXhlYwogICAgIC8vIEVuc3Vy
ZSB0aGF0IHVudXNlZCB2YWx1ZXMgaW4gdGhlIHZlY3RvciBhcmUgemVyb2VkIG91dC4KICAgICBm
b3IgKHVuc2lnbmVkIGkgPSBuZXdVc2VkVmVjdG9yTGVuZ3RoOyBpIDwgdXNlZFZlY3Rvckxlbmd0
aDsgKytpKQogICAgICAgICBtX3N0b3JhZ2UtPm1fdmVjdG9yW2ldID0gMDsKKworICAgIG1fc3Rv
cmFnZS0+bV9udW1WYWx1ZXNJblZlY3RvciA9IG5ld1VzZWRWZWN0b3JMZW5ndGg7CisKKyAgICBj
aGVja0NvbnNpc3RlbmN5KFNvcnRDb25zaXN0ZW5jeUNoZWNrKTsKIH0KIAogdW5zaWduZWQgQXJy
YXlJbnN0YW5jZTo6Y29tcGFjdEZvclNvcnRpbmcoKQogeworICAgIGNoZWNrQ29uc2lzdGVuY3ko
KTsKKwogICAgIEFycmF5U3RvcmFnZSogc3RvcmFnZSA9IG1fc3RvcmFnZTsKIAogICAgIHVuc2ln
bmVkIHVzZWRWZWN0b3JMZW5ndGggPSBtaW4obV9sZW5ndGgsIG1fdmVjdG9yTGVuZ3RoKTsKQEAg
LTY5MCw2ICs3NTUsMTAgQEAgdW5zaWduZWQgQXJyYXlJbnN0YW5jZTo6Y29tcGFjdEZvclNvcnRp
bgogICAgIGZvciAodW5zaWduZWQgaSA9IG5ld1VzZWRWZWN0b3JMZW5ndGg7IGkgPCB1c2VkVmVj
dG9yTGVuZ3RoOyArK2kpCiAgICAgICAgIHN0b3JhZ2UtPm1fdmVjdG9yW2ldID0gMDsKIAorICAg
IHN0b3JhZ2UtPm1fbnVtVmFsdWVzSW5WZWN0b3IgPSBuZXdVc2VkVmVjdG9yTGVuZ3RoOworCisg
ICAgY2hlY2tDb25zaXN0ZW5jeShTb3J0Q29uc2lzdGVuY3lDaGVjayk7CisKICAgICByZXR1cm4g
bnVtRGVmaW5lZDsKIH0KIApAQCAtNzAzLDQgKzc3Miw0MiBAQCB2b2lkIEFycmF5SW5zdGFuY2U6
OnNldExhenlDcmVhdGlvbkRhdGEoCiAgICAgbV9zdG9yYWdlLT5sYXp5Q3JlYXRpb25EYXRhID0g
ZDsKIH0KIAorI2lmIENIRUNLX0FSUkFZX0NPTlNJU1RFTkNZCisKK3ZvaWQgQXJyYXlJbnN0YW5j
ZTo6Y2hlY2tDb25zaXN0ZW5jeShDb25zaXN0ZW5jeUNoZWNrVHlwZSB0eXBlKQoreworICAgIEFT
U0VSVChtX3N0b3JhZ2UpOworICAgIGlmICh0eXBlID09IFNvcnRDb25zaXN0ZW5jeUNoZWNrKQor
ICAgICAgICBBU1NFUlQoIW1fc3RvcmFnZS0+bV9zcGFyc2VWYWx1ZU1hcCk7CisKKyAgICB1bnNp
Z25lZCBudW1WYWx1ZXNJblZlY3RvciA9IDA7CisgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8
IG1fdmVjdG9yTGVuZ3RoOyArK2kpIHsKKyAgICAgICAgaWYgKEpTVmFsdWUqIHZhbHVlID0gbV9z
dG9yYWdlLT5tX3ZlY3RvcltpXSkgeworICAgICAgICAgICAgQVNTRVJUKGkgPCBtX2xlbmd0aCk7
CisgICAgICAgICAgICBpZiAodHlwZSAhPSBEZXN0cnVjdG9yQ29uc2lzdGVuY3lDaGVjaykKKyAg
ICAgICAgICAgICAgICB2YWx1ZS0+dHlwZSgpOyAvLyBMaWtlbHkgdG8gY3Jhc2ggaWYgdGhlIG9i
amVjdCB3YXMgZGVhbGxvY2F0ZWQuCisgICAgICAgICAgICArK251bVZhbHVlc0luVmVjdG9yOwor
ICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgaWYgKHR5cGUgPT0gU29ydENvbnNpc3RlbmN5
Q2hlY2spCisgICAgICAgICAgICAgICAgQVNTRVJUKGkgPj0gbV9zdG9yYWdlLT5tX251bVZhbHVl
c0luVmVjdG9yKTsKKyAgICAgICAgfQorICAgIH0KKyAgICBBU1NFUlQobnVtVmFsdWVzSW5WZWN0
b3IgPT0gbV9zdG9yYWdlLT5tX251bVZhbHVlc0luVmVjdG9yKTsKKworICAgIGlmIChtX3N0b3Jh
Z2UtPm1fc3BhcnNlVmFsdWVNYXApIHsKKyAgICAgICAgU3BhcnNlQXJyYXlWYWx1ZU1hcDo6aXRl
cmF0b3IgZW5kID0gbV9zdG9yYWdlLT5tX3NwYXJzZVZhbHVlTWFwLT5lbmQoKTsKKyAgICAgICAg
Zm9yIChTcGFyc2VBcnJheVZhbHVlTWFwOjppdGVyYXRvciBpdCA9IG1fc3RvcmFnZS0+bV9zcGFy
c2VWYWx1ZU1hcC0+YmVnaW4oKTsgaXQgIT0gZW5kOyArK2l0KSB7CisgICAgICAgICAgICB1bnNp
Z25lZCBpbmRleCA9IGl0LT5maXJzdDsKKyAgICAgICAgICAgIEFTU0VSVChpbmRleCA8IG1fbGVu
Z3RoKTsKKyAgICAgICAgICAgIEFTU0VSVChpbmRleCA+PSBtX3ZlY3Rvckxlbmd0aCk7CisgICAg
ICAgICAgICBBU1NFUlQoaW5kZXggPD0gbWF4QXJyYXlJbmRleCk7CisgICAgICAgICAgICBBU1NF
UlQoaXQtPnNlY29uZCk7CisgICAgICAgICAgICBpZiAodHlwZSAhPSBEZXN0cnVjdG9yQ29uc2lz
dGVuY3lDaGVjaykKKyAgICAgICAgICAgICAgICBpdC0+c2Vjb25kLT50eXBlKCk7IC8vIExpa2Vs
eSB0byBjcmFzaCBpZiB0aGUgb2JqZWN0IHdhcyBkZWFsbG9jYXRlZC4KKyAgICAgICAgfQorICAg
IH0KK30KKworI2VuZGlmCisKIH0KSW5kZXg6IEphdmFTY3JpcHRDb3JlL2tqcy9hcnJheV9pbnN0
YW5jZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIEphdmFTY3JpcHRDb3JlL2tqcy9hcnJheV9pbnN0YW5jZS5o
CShyZXZpc2lvbiAzNDQ1NykKKysrIEphdmFTY3JpcHRDb3JlL2tqcy9hcnJheV9pbnN0YW5jZS5o
CSh3b3JraW5nIGNvcHkpCkBAIC0xLDcgKzEsNyBAQAogLy8gLSotIGMtYmFzaWMtb2Zmc2V0OiAy
IC0qLQogLyoKICAqICBDb3B5cmlnaHQgKEMpIDE5OTktMjAwMCBIYXJyaSBQb3J0ZW4gKHBvcnRl
bkBrZGUub3JnKQotICogIENvcHlyaWdodCAoQykgMjAwMywgMjAwNyBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKiAgQ29weXJpZ2h0IChDKSAyMDAzLCAyMDA3LCAyMDA4IEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiAgVGhpcyBsaWJyYXJ5IGlzIGZyZWUg
c29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgogICogIG1vZGlmeSBpdCB1
bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKQEAgLTY0LDcg
KzY0LDEwIEBAIG5hbWVzcGFjZSBLSlMgewogICAgIHZvaWQgc2V0TGVuZ3RoKHVuc2lnbmVkKTsK
ICAgICBib29sIGluY3JlYXNlVmVjdG9yTGVuZ3RoKHVuc2lnbmVkIG5ld0xlbmd0aCk7CiAgICAg
Ci0gICAgdW5zaWduZWQgY29tcGFjdEZvclNvcnRpbmcoKTsgICAgCisgICAgdW5zaWduZWQgY29t
cGFjdEZvclNvcnRpbmcoKTsKKworICAgIGVudW0gQ29uc2lzdGVuY3lDaGVja1R5cGUgeyBOb3Jt
YWxDb25zaXN0ZW5jeUNoZWNrLCBEZXN0cnVjdG9yQ29uc2lzdGVuY3lDaGVjaywgU29ydENvbnNp
c3RlbmN5Q2hlY2sgfTsKKyAgICB2b2lkIGNoZWNrQ29uc2lzdGVuY3koQ29uc2lzdGVuY3lDaGVj
a1R5cGUgPSBOb3JtYWxDb25zaXN0ZW5jeUNoZWNrKTsKIAogICAgIHVuc2lnbmVkIG1fbGVuZ3Ro
OwogICAgIHVuc2lnbmVkIG1fdmVjdG9yTGVuZ3RoOwo=
</data>
<flag name="review"
          id="9464"
          type_id="1"
          status="+"
          setter="ap"
    />
          </attachment>
      

    </bug>

</bugzilla>