<?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>143535</bug_id>
          
          <creation_ts>2015-04-08 14:02:31 -0700</creation_ts>
          <short_desc>JSArray::sortNumeric should handle ArrayWithUndecided</short_desc>
          <delta_ts>2015-04-09 15:06:27 -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>All</rep_platform>
          <op_sys>All</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>
          <dependson>143582</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Filip Pizlo">fpizlo</reporter>
          <assigned_to name="Filip Pizlo">fpizlo</assigned_to>
          <cc>barraclough</cc>
    
    <cc>benjamin</cc>
    
    <cc>bfulgham</cc>
    
    <cc>ggaren</cc>
    
    <cc>mark.lam</cc>
    
    <cc>mhahnenb</cc>
    
    <cc>mmirman</cc>
    
    <cc>msaboff</cc>
    
    <cc>nrotem</cc>
    
    <cc>oliver</cc>
    
    <cc>ossy</cc>
    
    <cc>saam</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1083725</commentid>
    <comment_count>0</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2015-04-08 14:02:31 -0700</bug_when>
    <thetext>Patch forthcoming.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1083726</commentid>
    <comment_count>1</comment_count>
      <attachid>250382</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2015-04-08 14:03:59 -0700</bug_when>
    <thetext>Created attachment 250382
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1083727</commentid>
    <comment_count>2</comment_count>
      <attachid>250382</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2015-04-08 14:08:05 -0700</bug_when>
    <thetext>Comment on attachment 250382
the patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1083733</commentid>
    <comment_count>3</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2015-04-08 14:15:24 -0700</bug_when>
    <thetext>Landed in http://trac.webkit.org/changeset/182567</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1083969</commentid>
    <comment_count>4</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2015-04-09 08:42:06 -0700</bug_when>
    <thetext>This change introduced two Windows failures:

** The following JSC stress test failures have been introduced:
	regress/script-tests/sorting-benchmark.js.dfg-eager
	regress/script-tests/sorting-benchmark.js.dfg-eager-no-cjit-validate

Can you please resolve?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1083987</commentid>
    <comment_count>5</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2015-04-09 09:59:37 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; This change introduced two Windows failures:
&gt; 
&gt; ** The following JSC stress test failures have been introduced:
&gt; 	regress/script-tests/sorting-benchmark.js.dfg-eager
&gt; 	regress/script-tests/sorting-benchmark.js.dfg-eager-no-cjit-validate
&gt; 
&gt; Can you please resolve?

These tests assert on the Apple Mac 32 bit debug bots too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1083988</commentid>
    <comment_count>6</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2015-04-09 10:00:34 -0700</bug_when>
    <thetext>regress/script-tests/sorting-benchmark.js.ftl-eager-no-cjit: ASSERTION FAILED: (spillFormat &amp; DataFormatJS) || spillFormat == DataFormatInt32
regress/script-tests/sorting-benchmark.js.ftl-eager-no-cjit: /Volumes/Data/slave/mavericks-32bitJSC-debug/build/Source/JavaScriptCore/dfg/DFGSpeculativeJIT32_64.cpp(871) : GPRReg JSC::DFG::SpeculativeJIT::fillSpeculateInt32Internal(JSC::DFG::Edge, JSC::DataFormat &amp;) [strict = false]</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1083989</commentid>
    <comment_count>7</comment_count>
    <who name="Michael Saboff">msaboff</who>
    <bug_when>2015-04-09 10:12:31 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; regress/script-tests/sorting-benchmark.js.ftl-eager-no-cjit: ASSERTION
&gt; FAILED: (spillFormat &amp; DataFormatJS) || spillFormat == DataFormatInt32
&gt; regress/script-tests/sorting-benchmark.js.ftl-eager-no-cjit:
&gt; /Volumes/Data/slave/mavericks-32bitJSC-debug/build/Source/JavaScriptCore/dfg/
&gt; DFGSpeculativeJIT32_64.cpp(871) : GPRReg
&gt; JSC::DFG::SpeculativeJIT::fillSpeculateInt32Internal(JSC::DFG::Edge,
&gt; JSC::DataFormat &amp;) [strict = false]

Looking into these failures.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>250382</attachid>
            <date>2015-04-08 14:03:59 -0700</date>
            <delta_ts>2015-04-08 14:08:05 -0700</delta_ts>
            <desc>the patch</desc>
            <filename>blah.patch</filename>
            <type>text/plain</type>
            <size>8055</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTgyNTY1KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBA
CisyMDE1LTA0LTA4ICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
SlNBcnJheTo6c29ydE51bWVyaWMgc2hvdWxkIGhhbmRsZSBBcnJheVdpdGhVbmRlY2lkZWQKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0MzUzNQorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAgQXJy
YXlXaXRoVW5kZWNpZGVkIGlzIHdoYXQgeW91IGdldCBpZiB5b3UgaGF2ZW4ndCBzdG9yZWQgYW55
dGhpbmcgaW50byB0aGUgYXJyYXkgeWV0LiBXZSBuZWVkIHRvIGhhbmRsZSBpdC4KKworICAgICAg
ICAqIHJ1bnRpbWUvSlNBcnJheS5jcHA6CisgICAgICAgIChKU0M6OkpTQXJyYXk6OnNvcnROdW1l
cmljKToKKyAgICAgICAgKiB0ZXN0cy9zdHJlc3Mvc29ydC1hcnJheS13aXRoLXVuZGVjaWRlZC5q
czogQWRkZWQuCisKIDIwMTUtMDQtMDggIEZpbGlwIFBpemxvICA8ZnBpemxvQGFwcGxlLmNvbT4K
IAogICAgICAgICBERkc6OkludGVnZXJDaGVja0NvbWJpbmluZ1BoYXNlJ3Mgd3JhcC1hcm91bmQg
Y2hlY2sgc2hvdWxkbid0IHRyaWdnZXIgQysrIHVuZGVmIGJlaGF2aW9yIG9uIHdyYXAtYXJvdW5k
CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5LmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5LmNwcAkocmV2aXNp
b24gMTgyNTYzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheS5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTEwOTEsMTUgKzEwOTEsMTYgQEAgdm9pZCBKU0FycmF5Ojpzb3J0
TnVtZXJpYyhFeGVjU3RhdGUqIGV4ZQogCiAgICAgc3dpdGNoIChpbmRleGluZ1R5cGUoKSkgewog
ICAgIGNhc2UgQXJyYXlDbGFzczoKKyAgICBjYXNlIEFycmF5V2l0aFVuZGVjaWRlZDoKICAgICAg
ICAgcmV0dXJuOwogICAgICAgICAKICAgICBjYXNlIEFycmF5V2l0aEludDMyOgogICAgICAgICBz
b3J0TnVtZXJpY1ZlY3RvcjxBcnJheVdpdGhJbnQzMj4oZXhlYywgY29tcGFyZUZ1bmN0aW9uLCBj
YWxsVHlwZSwgY2FsbERhdGEpOwotICAgICAgICBicmVhazsKKyAgICAgICAgcmV0dXJuOwogICAg
ICAgICAKICAgICBjYXNlIEFycmF5V2l0aERvdWJsZToKICAgICAgICAgc29ydE51bWVyaWNWZWN0
b3I8QXJyYXlXaXRoRG91YmxlPihleGVjLCBjb21wYXJlRnVuY3Rpb24sIGNhbGxUeXBlLCBjYWxs
RGF0YSk7Ci0gICAgICAgIGJyZWFrOworICAgICAgICByZXR1cm47CiAgICAgICAgIAogICAgIGNh
c2UgQXJyYXlXaXRoQ29udGlndW91czoKICAgICAgICAgc29ydE51bWVyaWNWZWN0b3I8QXJyYXlX
aXRoQ29udGlndW91cz4oZXhlYywgY29tcGFyZUZ1bmN0aW9uLCBjYWxsVHlwZSwgY2FsbERhdGEp
OwpAQCAtMTExMCw3ICsxMTExLDggQEAgdm9pZCBKU0FycmF5Ojpzb3J0TnVtZXJpYyhFeGVjU3Rh
dGUqIGV4ZQogICAgICAgICByZXR1cm47CiAgICAgICAgIAogICAgIGRlZmF1bHQ6Ci0gICAgICAg
IENSQVNIKCk7CisgICAgICAgIGRhdGFMb2coIkluZGV4aW5nIHR5cGU6ICIsIGluZGV4aW5nVHlw
ZSgpLCAiXG4iKTsKKyAgICAgICAgUkVMRUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICAg
ICAgcmV0dXJuOwogICAgIH0KIH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9z
dHJlc3Mvc29ydC1hcnJheS13aXRoLXVuZGVjaWRlZC5qcwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvdGVzdHMvc3RyZXNzL3NvcnQtYXJyYXktd2l0aC11bmRlY2lkZWQuanMJ
KHJldmlzaW9uIDApCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvc3RyZXNzL3NvcnQt
YXJyYXktd2l0aC11bmRlY2lkZWQuanMJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSBAQAorbmV3
IEFycmF5KDEwMCkuc29ydChmdW5jdGlvbihhLCBiKSB7IHJldHVybiBhIC0gYjsgfSk7CkluZGV4
OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCShyZXZpc2lvbiAxODI1NjUpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcg
Y29weSkKQEAgLTEsMyArMSwyMiBAQAorMjAxNS0wNC0wOCAgRmlsaXAgUGl6bG8gIDxmcGl6bG9A
YXBwbGUuY29tPgorCisgICAgICAgIEpTQXJyYXk6OnNvcnROdW1lcmljIHNob3VsZCBoYW5kbGUg
QXJyYXlXaXRoVW5kZWNpZGVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNDM1MzUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KyAgICAgICAgCisgICAgICAgIFVwbG9hZCB0aGUgb3JpZ2luYWwgdGVzdCB0aGF0IGZpcnN0IHNw
b3R0ZWQgdGhpcy4KKworICAgICAgICAqIGpzL3JlZ3Jlc3Mvc2NyaXB0LXRlc3RzL3NvcnRpbmct
YmVuY2htYXJrLmpzOiBBZGRlZC4KKyAgICAgICAgKGxvZyk6CisgICAgICAgIChib3R0b21fdXBf
bWVyZ2Vfc29ydCk6CisgICAgICAgIChhTWludXNCKToKKyAgICAgICAgKHZlcmlmeSk6CisgICAg
ICAgIChiZW5jaG1hcmspOgorICAgICAgICAobWFrZUFycmF5cyk6CisgICAgICAgICoganMvcmVn
cmVzcy9zb3J0aW5nLWJlbmNobWFyay1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGpz
L3JlZ3Jlc3Mvc29ydGluZy1iZW5jaG1hcmsuaHRtbDogQWRkZWQuCisKIDIwMTUtMDQtMDggIEFs
ZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBCbG9j
ayBwb3B1cHMgZnJvbSBjb250ZW50IGV4dGVuc2lvbnMuCkluZGV4OiBMYXlvdXRUZXN0cy9qcy9y
ZWdyZXNzL3NvcnRpbmctYmVuY2htYXJrLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9qcy9yZWdyZXNzL3NvcnRpbmctYmVuY2htYXJrLWV4cGVjdGVkLnR4dAkocmV2aXNp
b24gMCkKKysrIExheW91dFRlc3RzL2pzL3JlZ3Jlc3Mvc29ydGluZy1iZW5jaG1hcmstZXhwZWN0
ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMTAgQEAKK0pTUmVncmVzcy9zb3J0aW5n
LWJlbmNobWFyaworCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1Mi
IG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBubyBleGNl
cHRpb24gdGhyb3duCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09N
UExFVEUKKwpJbmRleDogTGF5b3V0VGVzdHMvanMvcmVncmVzcy9zb3J0aW5nLWJlbmNobWFyay5o
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2pzL3JlZ3Jlc3Mvc29ydGluZy1iZW5jaG1h
cmsuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2pzL3JlZ3Jlc3Mvc29ydGluZy1i
ZW5jaG1hcmsuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDEyIEBACis8IURPQ1RZUEUg
SFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPHNj
cmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hl
YWQ+Cis8Ym9keT4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvcmVncmVzcy1wcmUuanMi
Pjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9zb3J0aW5nLWJlbmNobWFyay5q
cyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL3JlZ3Jlc3MtcG9zdC5q
cyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5q
cyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9qcy9yZWdy
ZXNzL3NjcmlwdC10ZXN0cy9zb3J0aW5nLWJlbmNobWFyay5qcwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9qcy9yZWdyZXNzL3NjcmlwdC10ZXN0cy9zb3J0aW5nLWJlbmNobWFyay5qcwkocmV2
aXNpb24gMCkKKysrIExheW91dFRlc3RzL2pzL3JlZ3Jlc3Mvc2NyaXB0LXRlc3RzL3NvcnRpbmct
YmVuY2htYXJrLmpzCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMTYwIEBACitmdW5jdGlvbiBs
b2cocykKK3sKK30KKworLy8gRklYTUU6IENsZWFuIHVwLgorLy8gRklYTUU6IENhbid0IHVzZSBn
bG9iYWwgcmVzb2x2ZSBvciBidWlsdC1pbiBmdW5jdGlvbnMgYnkgbmFtZS4KKy8vIEZJWE1FOiBS
dWxlcyBhYm91dCBpbnRlZ2VyIHRydW5jYXRpb24uCisvLyBGSVhNRTogTmVlZCB0byBzdXBwb3J0
IG1pc3NpbmcgY29tcGFyYXRvci4KK3ZhciBib3R0b21fdXBfbWVyZ2Vfc29ydCA9IChmdW5jdGlv
biAoKSB7CisJcmV0dXJuIGZ1bmN0aW9uIGJvdHRvbV91cF9tZXJnZV9zb3J0KGNvbXBhcmF0b3Ip
CisJeworCQl2YXIgYXJyYXkgPSB0aGlzOworCQl2YXIgbGVuZ3RoID0gYXJyYXkubGVuZ3RoOwor
CQl2YXIgY29weSA9IFsgXTsKKworCQkvLyBSZW1vdmUgaG9sZXMgYW5kIHVuZGVmaW5lZHMuCisJ
CXZhciB1bmRlZmluZWRDb3VudCA9IDA7CisJCWZvciAodmFyIHAgaW4gYXJyYXkpIHsKKwkJCXZh
ciB2YWx1ZSA9IGFycmF5W3BdOworCQkJaWYgKHZhbHVlID09PSB1bmRlZmluZWQpIHsKKwkJCQkr
K3VuZGVmaW5lZENvdW50OworCQkJCWNvbnRpbnVlOworCQkJfQorCQkJY29weVtjb3B5Lmxlbmd0
aF0gPSB2YWx1ZTsKKwkJfQorCisJCXZhciBuID0gY29weS5sZW5ndGg7CisJCXZhciBhID0gY29w
eTsKKwkJdmFyIGIgPSBhcnJheTsKKworCQlmb3IgKHZhciB3aWR0aCA9IDE7IHdpZHRoIDwgbjsg
d2lkdGggPSAyICogd2lkdGgpIHsKKwkJCWZvciAodmFyIGkgPSAwOyBpIDwgbjsgaSA9IGkgKyAy
ICogd2lkdGgpIHsKKwkJCQl2YXIgaUxlZnQgPSBpOworCQkJCXZhciBpUmlnaHQgPSBNYXRoLm1p
bihpICsgd2lkdGgsIG4pOworCQkJCXZhciBpRW5kID0gTWF0aC5taW4oaSArIDIgKiB3aWR0aCwg
bik7CisJCQkJdmFyIGkwID0gaUxlZnQ7CisJCQkJdmFyIGkxID0gaVJpZ2h0OworCQkJCXZhciBq
OworCisJCQkJZm9yIChqID0gaUxlZnQ7IGogPCBpRW5kOyBqKyspIHsKKwkJCQkJaWYgKGkwIDwg
aVJpZ2h0ICYmIChpMSA+PSBpRW5kIHx8IGNvbXBhcmF0b3IoYVtpMF0sIGFbaTFdKSA8IDApKSB7
CisJCQkJCQliW2pdID0gYVtpMF07CisJCQkJCQlpMCA9IGkwICsgMTsKKwkJCQkJfSBlbHNlIHsK
KwkJCQkJCWJbal0gPSBhW2kxXTsKKwkJCQkJCWkxID0gaTEgKyAxOworCQkJCQl9CisJCQkJfQor
CQkJfQorCisJCQl2YXIgdG1wID0gYTsKKwkJCWEgPSBiOworCQkJYiA9IHRtcDsKKwkJfQorCisJ
ICAgIGlmIChhICE9IGFycmF5KSB7CisJCSAgICBmb3IodmFyIGkgPSAwOyBpIDwgYS5sZW5ndGg7
IGkrKykKKwkJICAgICAgICBhcnJheVtpXSA9IGFbaV07CisJICAgIH0KKworIAkJLy8gUmVzdG9y
ZSBob2xlcyBhbmQgdW5kZWZpbmVkcy4gUmVzdWx0IHNob3VsZCBiZSBbIHZhbHVlcy4uLiwgdW5k
ZWZpbmVzLi4uLCBob2xlcy4uLiBdLgorCQlmb3IgKHZhciBpID0gMDsgaSA8IHVuZGVmaW5lZENv
dW50OyArK2kpCisJCQlhcnJheVthcnJheS5sZW5ndGhdID0gdW5kZWZpbmVkOworCQlhcnJheS5s
ZW5ndGggPSBsZW5ndGg7CisJfQorfSkoKTsKKworZnVuY3Rpb24gb2JmdXNjYXRlZEFNaW51c0Io
YSwgYikKK3sKKwl2YXIgQSA9IGE7CisJdmFyIEIgPSBiOworCXJldHVybiBBIC0gQjsKK30KKwor
ZnVuY3Rpb24gYU1pbnVzQihhLCBiKQoreworCXJldHVybiBhIC0gYjsKK30KKwordmFyIHNvcnRG
dW5jdGlvbnMgPSBbIEFycmF5LnByb3RvdHlwZS5zb3J0LCBib3R0b21fdXBfbWVyZ2Vfc29ydCBd
OwordmFyIGNvbXBhcmF0b3JzID0gWyBhTWludXNCLCBvYmZ1c2NhdGVkQU1pbnVzQiBdOworCitm
dW5jdGlvbiB2ZXJpZnkocmVmZXJlbmNlLCBhcnJheSkKK3sKKwlmb3IgKHZhciBpIGluIHJlZmVy
ZW5jZSkgeworCQlpZiAoYXJyYXlbaV0gIT09IHJlZmVyZW5jZVtpXSkgeworCQkJbG9nKCJTT1JU
IEZBSUw6Iik7CisJCQlsb2coInJlZmVyZW5jZTogIiArIHJlZmVyZW5jZSk7CisJCQlsb2coImFy
cmF5OiAiICsgYXJyYXkpOworCQkJcmV0dXJuOworCQl9CisJfQorCisJaWYgKHJlZmVyZW5jZS5s
ZW5ndGggIT0gYXJyYXkubGVuZ3RoKSB7CisJCQlsb2coIlNPUlQgRkFJTDoiKTsKKwkJCWxvZygi
cmVmZXJlbmNlLmxlbmd0aDogIiArIHJlZmVyZW5jZS5sZW5ndGgpOworCQkJbG9nKCJhcnJheS5s
ZW5ndGg6ICIgKyBhcnJheS5sZW5ndGgpOworCX0KK30KKworZnVuY3Rpb24gYmVuY2htYXJrKGYs
IGMsIGFycmF5KQoreworCXZhciBzdGFydCA9IG5ldyBEYXRlOworCWYuY2FsbChhcnJheSwgYyk7
CisJdmFyIGVuZCA9IG5ldyBEYXRlOworCisJLy8gT3VyIHRpbWUgcmVzb2x1dGlvbiBpcyBub3Qg
dmVyeSBnb29kLCBzbyB3ZSByb3VuZCBkb3duIHNtYWxsIG51bWJlcnMgdG8KKwkvLyB6ZXJvIGlu
IG9yZGVyIHRvIHNob3cgdGhhdCB0aGV5IGFyZSBub3QgbWVhbmluZ2Z1bC4KKwl2YXIgcmVzdWx0
ID0gZW5kIC0gc3RhcnQ7CisJaWYgKHJlc3VsdCA8IDIpCisJCXJlc3VsdCA9IDA7CisKKwlsb2co
YXJyYXkubGVuZ3RoIC8gMTAyNCArICJrOlx0IiArIHJlc3VsdCArICJtcyIpOworfQorCitmdW5j
dGlvbiBtYWtlQXJyYXlzKCkKK3sKKwl2YXIgYXJyYXlzID0gWyBdOworCXZhciBtaW4gPSAxMDI0
OworCXZhciBtYXggPSAzMiAqIDEwMjQ7CisJZm9yICh2YXIgY291bnQgPSBtaW47IGNvdW50IDw9
IG1heDsgY291bnQgKj0gMikgeworCQl2YXIgYXJyYXkgPSBbIF07CisJCWZvciAodmFyIGkgPSAw
OyBpIDwgY291bnQ7ICsraSkKKwkJCWFycmF5W2ldID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgp
ICogY291bnQpOworCQlhcnJheXMucHVzaChhcnJheSk7CisJfQorCisJYXJyYXlzLnB1c2gobmV3
IEFycmF5KG1heCkpOworCisJYXJyYXlzLnB1c2goKGZ1bmN0aW9uKCkgeworCQl2YXIgYSA9IFsg
XTsKKwkJYVttYXggLSAxXSA9IDE7CisJCXJldHVybiBhOworCX0pKCkpOworCisJYXJyYXlzLnB1
c2goKGZ1bmN0aW9uKCkgeworCQl2YXIgYSA9IFsgXTsKKwkJYVtNYXRoLnBvdygyLCAyMSkgLSAx
XSA9IDE7CisJCXJldHVybiBhOworCX0pKCkpOworCisJcmV0dXJuIGFycmF5czsKK30KKworKGZ1
bmN0aW9uIG1haW4oKSB7CisJdmFyIGFycmF5cyA9IG1ha2VBcnJheXMoKTsKKwlmb3IgKHZhciBj
IG9mIGNvbXBhcmF0b3JzKSB7CisJCWxvZygiXG4iICsgIj09PT09ICIgKyBjLm5hbWUgKyAiID09
PT09Iik7CisKKwkJZm9yICh2YXIgZiBvZiBzb3J0RnVuY3Rpb25zKSB7CisJCQlsb2coIlxuIiAr
IGYubmFtZSk7CisKKwkJCWZvciAodmFyIGFycmF5IG9mIGFycmF5cykgeworCQkJCXZhciBjb3B5
ID0gYXJyYXkuc2xpY2UoKTsKKwkJCQliZW5jaG1hcmsoZiwgYywgY29weSk7CisJCQkJdmVyaWZ5
KEFycmF5LnByb3RvdHlwZS5zb3J0LmNhbGwoYXJyYXkuc2xpY2UoKSwgYyksIGNvcHkpOworCQkJ
fQorCQl9CisJfQorfSkoKTsK
</data>
<flag name="review"
          id="275166"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
      

    </bug>

</bugzilla>