<?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>26594</bug_id>
          
          <creation_ts>2009-06-21 18:23:57 -0700</creation_ts>
          <short_desc>JSC needs to support Date.toISOString</short_desc>
          <delta_ts>2009-06-21 22:08: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>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>
          
          <blocked>26592</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Oliver Hunt">oliver</reporter>
          <assigned_to name="Oliver Hunt">oliver</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>127268</commentid>
    <comment_count>0</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2009-06-21 18:23:57 -0700</bug_when>
    <thetext>Date.toJSON depends on Date.toISOString</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>127269</commentid>
    <comment_count>1</comment_count>
      <attachid>31627</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2009-06-21 18:38:14 -0700</bug_when>
    <thetext>Created attachment 31627
Support Date.toISOString</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>127270</commentid>
    <comment_count>2</comment_count>
      <attachid>31628</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2009-06-21 19:12:52 -0700</bug_when>
    <thetext>Created attachment 31628
Updated patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>127276</commentid>
    <comment_count>3</comment_count>
      <attachid>31628</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2009-06-21 21:02:12 -0700</bug_when>
    <thetext>Comment on attachment 31628
Updated patch

&gt; +    
&gt; +    const bool utc = true;
&gt; +    
&gt; +    DateInstance* thisDateObj = asDateInstance(thisValue); 
&gt; +    double milli = thisDateObj-&gt;internalNumber();
&gt; +    if (isnan(milli))
&gt; +        return jsNontrivialString(exec, &quot;Invalid Date&quot;);

According to http://wiki.ecmascript.org/lib/exe/fetch.php?id=es3.1%3Aes3.1_proposal_working_draft&amp;cache=cache&amp;media=es3.1:es5_candidate_errata_june_17.pdf, we should throwing a RangeError for non-finite values.

&gt; +    
&gt; +    GregorianDateTime t;
&gt; +    thisDateObj-&gt;msToGregorianDateTime(milli, true, t);

I believe the intent of the utc constant is to use it here instead of passing true.


r- for the isnan bit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>127278</commentid>
    <comment_count>4</comment_count>
      <attachid>31628</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2009-06-21 22:01:22 -0700</bug_when>
    <thetext>Comment on attachment 31628
Updated patch

Oliver and I discussed this a bit on IRC.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>127279</commentid>
    <comment_count>5</comment_count>
      <attachid>31628</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2009-06-21 22:01:53 -0700</bug_when>
    <thetext>Comment on attachment 31628
Updated patch

Oliver and I discussed this a bit on IRC.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>127280</commentid>
    <comment_count>6</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2009-06-21 22:08:38 -0700</bug_when>
    <thetext>Committing to http://svn.webkit.org/repository/webkit/trunk ...
	M	JavaScriptCore/ChangeLog
	M	JavaScriptCore/runtime/DatePrototype.cpp
	M	LayoutTests/ChangeLog
	A	LayoutTests/fast/js/date-toisostring-expected.txt
	A	LayoutTests/fast/js/date-toisostring.html
	A	LayoutTests/fast/js/resources/date-toisostring.js
Committed r44929
</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>31627</attachid>
            <date>2009-06-21 18:38:14 -0700</date>
            <delta_ts>2009-06-21 19:12:52 -0700</delta_ts>
            <desc>Support Date.toISOString</desc>
            <filename>Date.toISOString.patch</filename>
            <type>text/plain</type>
            <size>5919</size>
            <attacher name="Oliver Hunt">oliver</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyBiL0phdmFTY3JpcHRDb3JlL0No
YW5nZUxvZwppbmRleCAzMTY0ODhlLi44MDQzYmVlIDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29y
ZS9DaGFuZ2VMb2cKKysrIGIvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMTcg
QEAKIDIwMDktMDYtMjEgIE9saXZlciBIdW50ICA8b2xpdmVyQGFwcGxlLmNvbT4KIAorICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBCdWcgMjY1OTQ6IEpTQyBu
ZWVkcyB0byBzdXBwb3J0IERhdGUudG9JU09TdHJpbmcKKyAgICAgICAgPGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNjU5ND4KKworICAgICAgICBBZGQgc3VwcG9ydCBm
b3IgRGF0ZS50b0lTT1N0cmluZy4KKworICAgICAgICAqIHJ1bnRpbWUvRGF0ZVByb3RvdHlwZS5j
cHA6CisgICAgICAgIChKU0M6OmRhdGVQcm90b0Z1bmNUb0lTT1N0cmluZyk6CisKKzIwMDktMDYt
MjEgIE9saXZlciBIdW50ICA8b2xpdmVyQGFwcGxlLmNvbT4KKwogICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKEJ1aWxkIGZpeCkuCiAKICAgICAgICAgUmVtb3ZlIGRlYWQgY29kZS4KZGlmZiAt
LWdpdCBhL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZVByb3RvdHlwZS5jcHAgYi9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0RhdGVQcm90b3R5cGUuY3BwCmluZGV4IDdiMTU5YTAuLjlhNWQyY2Ug
MTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZVByb3RvdHlwZS5jcHAKKysr
IGIvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlUHJvdG90eXBlLmNwcApAQCAtMTEzLDYgKzEx
Myw3IEBAIHN0YXRpYyBKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZGF0ZVByb3RvRnVuY1RvTG9jYWxl
VGltZVN0cmluZyhFeGVjU3RhdGUqLCBKU09iamVjCiBzdGF0aWMgSlNWYWx1ZSBKU0NfSE9TVF9D
QUxMIGRhdGVQcm90b0Z1bmNUb1N0cmluZyhFeGVjU3RhdGUqLCBKU09iamVjdCosIEpTVmFsdWUs
IGNvbnN0IEFyZ0xpc3QmKTsKIHN0YXRpYyBKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZGF0ZVByb3Rv
RnVuY1RvVGltZVN0cmluZyhFeGVjU3RhdGUqLCBKU09iamVjdCosIEpTVmFsdWUsIGNvbnN0IEFy
Z0xpc3QmKTsKIHN0YXRpYyBKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZGF0ZVByb3RvRnVuY1RvVVRD
U3RyaW5nKEV4ZWNTdGF0ZSosIEpTT2JqZWN0KiwgSlNWYWx1ZSwgY29uc3QgQXJnTGlzdCYpOwor
c3RhdGljIEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBkYXRlUHJvdG9GdW5jVG9JU09TdHJpbmcoRXhl
Y1N0YXRlKiwgSlNPYmplY3QqLCBKU1ZhbHVlLCBjb25zdCBBcmdMaXN0Jik7CiAKIH0KIApAQCAt
MzQyLDYgKzM0Myw3IEBAIGNvbnN0IENsYXNzSW5mbyBEYXRlUHJvdG90eXBlOjppbmZvID0geyJE
YXRlIiwgJkRhdGVJbnN0YW5jZTo6aW5mbywgMCwgRXhlY1N0YXRlCiAvKiBTb3VyY2UgZm9yIERh
dGVQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBkYXRlVGFibGUKICAgdG9TdHJpbmcgICAgICAgICAg
ICAgIGRhdGVQcm90b0Z1bmNUb1N0cmluZyAgICAgICAgICAgICAgICBEb250RW51bXxGdW5jdGlv
biAgICAgICAwCisgIHRvSVNPU3RyaW5nICAgICAgICAgICBkYXRlUHJvdG9GdW5jVG9JU09TdHJp
bmcgICAgICAgICAgICAgRG9udEVudW18RnVuY3Rpb24gICAgICAgMAogICB0b1VUQ1N0cmluZyAg
ICAgICAgICAgZGF0ZVByb3RvRnVuY1RvVVRDU3RyaW5nICAgICAgICAgICAgIERvbnRFbnVtfEZ1
bmN0aW9uICAgICAgIDAKICAgdG9EYXRlU3RyaW5nICAgICAgICAgIGRhdGVQcm90b0Z1bmNUb0Rh
dGVTdHJpbmcgICAgICAgICAgICBEb250RW51bXxGdW5jdGlvbiAgICAgICAwCiAgIHRvVGltZVN0
cmluZyAgICAgICAgICBkYXRlUHJvdG9GdW5jVG9UaW1lU3RyaW5nICAgICAgICAgICAgRG9udEVu
dW18RnVuY3Rpb24gICAgICAgMApAQCAtNDM4LDYgKzQ0MCwyNSBAQCBKU1ZhbHVlIEpTQ19IT1NU
X0NBTEwgZGF0ZVByb3RvRnVuY1RvVVRDU3RyaW5nKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3Qq
LCBKU1ZhbAogICAgIHJldHVybiBqc05vbnRyaXZpYWxTdHJpbmcoZXhlYywgZm9ybWF0RGF0ZVVU
Q1ZhcmlhbnQodCkgKyAiICIgKyBmb3JtYXRUaW1lKHQsIHV0YykpOwogfQogCitKU1ZhbHVlIEpT
Q19IT1NUX0NBTEwgZGF0ZVByb3RvRnVuY1RvSVNPU3RyaW5nKEV4ZWNTdGF0ZSogZXhlYywgSlNP
YmplY3QqLCBKU1ZhbHVlIHRoaXNWYWx1ZSwgY29uc3QgQXJnTGlzdCYpCit7CisgICAgaWYgKCF0
aGlzVmFsdWUuaXNPYmplY3QoJkRhdGVJbnN0YW5jZTo6aW5mbykpCisgICAgICAgIHJldHVybiB0
aHJvd0Vycm9yKGV4ZWMsIFR5cGVFcnJvcik7CisgICAgCisgICAgY29uc3QgYm9vbCB1dGMgPSB0
cnVlOworICAgIAorICAgIERhdGVJbnN0YW5jZSogdGhpc0RhdGVPYmogPSBhc0RhdGVJbnN0YW5j
ZSh0aGlzVmFsdWUpOyAKKyAgICBkb3VibGUgbWlsbGkgPSB0aGlzRGF0ZU9iai0+aW50ZXJuYWxO
dW1iZXIoKTsKKyAgICBpZiAoaXNuYW4obWlsbGkpKQorICAgICAgICByZXR1cm4ganNOb250cml2
aWFsU3RyaW5nKGV4ZWMsICJJbnZhbGlkIERhdGUiKTsKKyAgICAKKyAgICBHcmVnb3JpYW5EYXRl
VGltZSB0OworICAgIHRoaXNEYXRlT2JqLT5tc1RvR3JlZ29yaWFuRGF0ZVRpbWUobWlsbGksIHV0
YywgdCk7CisgICAgY2hhciBidWZmZXJbMTAwXTsKKyAgICBzbnByaW50ZihidWZmZXIsIHNpemVv
ZihidWZmZXIpLCAiJTA0ZC0lMDJkLSUwMmRUJTAyZDolMDJkOiUwMmRaIiwgMTkwMCArIHQueWVh
ciwgdC5tb250aCArIDEsIHQubW9udGhEYXksIHQuaG91ciwgdC5taW51dGUsIHQuc2Vjb25kKTsK
KyAgICByZXR1cm4ganNOb250cml2aWFsU3RyaW5nKGV4ZWMsIGJ1ZmZlcik7Cit9CisKIEpTVmFs
dWUgSlNDX0hPU1RfQ0FMTCBkYXRlUHJvdG9GdW5jVG9EYXRlU3RyaW5nKEV4ZWNTdGF0ZSogZXhl
YywgSlNPYmplY3QqLCBKU1ZhbHVlIHRoaXNWYWx1ZSwgY29uc3QgQXJnTGlzdCYpCiB7CiAgICAg
aWYgKCF0aGlzVmFsdWUuaXNPYmplY3QoJkRhdGVJbnN0YW5jZTo6aW5mbykpCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggODBj
OGQxMC4uNDk0YWJkMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xh
eW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDE4IEBACiAyMDA5LTA2LTIxICBPbGl2ZXIg
SHVudCAgPG9saXZlckBhcHBsZS5jb20+CiAKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgQnVnIDI2NTk0OiBKU0MgbmVlZHMgdG8gc3VwcG9ydCBEYXRlLnRv
SVNPU3RyaW5nCisgICAgICAgIDxodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjY1OTQ+CisKKyAgICAgICAgQSBmZXcgYmFzaWMgY29ycmVjdG5lc3MgdGVzdHMgZm9yIERh
dGUudG9JU09TdHJpbmcuCisKKyAgICAgICAgKiBmYXN0L2pzL2RhdGUtdG9pc29zdHJpbmctZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2pzL2RhdGUtdG9pc29zdHJpbmcuaHRt
bDogQWRkZWQuCisgICAgICAgICogZmFzdC9qcy9yZXNvdXJjZXMvZGF0ZS10b2lzb3N0cmluZy5q
czogQWRkZWQuCisKKzIwMDktMDYtMjEgIE9saXZlciBIdW50ICA8b2xpdmVyQGFwcGxlLmNvbT4K
KwogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlciBhbmQgQ2FtZXJvbiBad2FyaWNoLgog
CiAgICAgICAgIEJ1ZyAyNjU4NzogU3VwcG9ydCBKU09OLnBhcnNlCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2pzL2RhdGUtdG9pc29zdHJpbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvZmFzdC9qcy9kYXRlLXRvaXNvc3RyaW5nLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi4zODJkNzk0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9qcy9kYXRlLXRvaXNvc3RyaW5nLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE0IEBA
CitUZXN0cyBmb3IgRGF0ZS50b0lTT1N0cmluZworCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUg
YSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIu
CisKKworUEFTUyBEYXRlLnRvSVNPU3RyaW5nLmNhbGwoe30pIHRocmV3IGV4Y2VwdGlvbiBUeXBl
RXJyb3I6IFJlc3VsdCBvZiBleHByZXNzaW9uICdEYXRlLnRvSVNPU3RyaW5nJyBbdW5kZWZpbmVk
XSBpcyBub3QgYW4gb2JqZWN0Li4KK1BBU1MgRGF0ZS50b0lTT1N0cmluZy5jYWxsKDApIHRocmV3
IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFJlc3VsdCBvZiBleHByZXNzaW9uICdEYXRlLnRvSVNPU3Ry
aW5nJyBbdW5kZWZpbmVkXSBpcyBub3QgYW4gb2JqZWN0Li4KK1BBU1MgbmV3IERhdGUoMCkudG9J
U09TdHJpbmcoKSBpcyAnMTk3MC0wMS0wMVQwMDowMDowMFonCitQQVNTIG5ldyBEYXRlKCcxIEph
bnVhcnkgMjAwMCBVVEMnKS50b0lTT1N0cmluZygpIGlzICcyMDAwLTAxLTAxVDAwOjAwOjAwWicK
K1BBU1MgbmV3IERhdGUoJzEgTWFyY2ggMjAwMCBVVEMnKS50b0lTT1N0cmluZygpIGlzICcyMDAw
LTAzLTAxVDAwOjAwOjAwWicKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVT
VCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2pzL2RhdGUtdG9pc29z
dHJpbmcuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvanMvZGF0ZS10b2lzb3N0cmluZy5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQwNGVlMTgKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L2pzL2RhdGUtdG9pc29zdHJpbmcuaHRtbApAQCAtMCwwICsx
LDEzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8
aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJyZXNvdXJjZXMvanMt
dGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+
PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRp
diBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2RhdGUtdG9pc29z
dHJpbmcuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9qcy10ZXN0LXBvc3Qu
anMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9qcy9yZXNvdXJjZXMvZGF0ZS10b2lzb3N0cmluZy5qcyBiL0xheW91dFRlc3RzL2Zhc3Qv
anMvcmVzb3VyY2VzL2RhdGUtdG9pc29zdHJpbmcuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMC4uZThjNWU0ZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qv
anMvcmVzb3VyY2VzL2RhdGUtdG9pc29zdHJpbmcuanMKQEAgLTAsMCArMSwxMCBAQAorZGVzY3Jp
cHRpb24oIlRlc3RzIGZvciBEYXRlLnRvSVNPU3RyaW5nIik7CisKK3Nob3VsZFRocm93KCJEYXRl
LnRvSVNPU3RyaW5nLmNhbGwoe30pIik7CitzaG91bGRUaHJvdygiRGF0ZS50b0lTT1N0cmluZy5j
YWxsKDApIik7CisKK3Nob3VsZEJlKCJuZXcgRGF0ZSgwKS50b0lTT1N0cmluZygpIiwgIicxOTcw
LTAxLTAxVDAwOjAwOjAwWiciKTsKK3Nob3VsZEJlKCJuZXcgRGF0ZSgnMSBKYW51YXJ5IDIwMDAg
VVRDJykudG9JU09TdHJpbmcoKSIsICInMjAwMC0wMS0wMVQwMDowMDowMFonIik7CitzaG91bGRC
ZSgibmV3IERhdGUoJzEgTWFyY2ggMjAwMCBVVEMnKS50b0lTT1N0cmluZygpIiwgIicyMDAwLTAz
LTAxVDAwOjAwOjAwWiciKTsKKworc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>31628</attachid>
            <date>2009-06-21 19:12:52 -0700</date>
            <delta_ts>2009-06-21 22:01:22 -0700</delta_ts>
            <desc>Updated patch</desc>
            <filename>Date.toISOString.patch</filename>
            <type>text/plain</type>
            <size>6547</size>
            <attacher name="Oliver Hunt">oliver</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyBiL0phdmFTY3JpcHRDb3JlL0No
YW5nZUxvZwppbmRleCAzMTY0ODhlLi44MDQzYmVlIDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29y
ZS9DaGFuZ2VMb2cKKysrIGIvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMTcg
QEAKIDIwMDktMDYtMjEgIE9saXZlciBIdW50ICA8b2xpdmVyQGFwcGxlLmNvbT4KIAorICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBCdWcgMjY1OTQ6IEpTQyBu
ZWVkcyB0byBzdXBwb3J0IERhdGUudG9JU09TdHJpbmcKKyAgICAgICAgPGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNjU5ND4KKworICAgICAgICBBZGQgc3VwcG9ydCBm
b3IgRGF0ZS50b0lTT1N0cmluZy4KKworICAgICAgICAqIHJ1bnRpbWUvRGF0ZVByb3RvdHlwZS5j
cHA6CisgICAgICAgIChKU0M6OmRhdGVQcm90b0Z1bmNUb0lTT1N0cmluZyk6CisKKzIwMDktMDYt
MjEgIE9saXZlciBIdW50ICA8b2xpdmVyQGFwcGxlLmNvbT4KKwogICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKEJ1aWxkIGZpeCkuCiAKICAgICAgICAgUmVtb3ZlIGRlYWQgY29kZS4KZGlmZiAt
LWdpdCBhL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZVByb3RvdHlwZS5jcHAgYi9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0RhdGVQcm90b3R5cGUuY3BwCmluZGV4IDdiMTU5YTAuLjFjNmY3OGQg
MTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZVByb3RvdHlwZS5jcHAKKysr
IGIvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlUHJvdG90eXBlLmNwcApAQCAtMTEzLDYgKzEx
Myw3IEBAIHN0YXRpYyBKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZGF0ZVByb3RvRnVuY1RvTG9jYWxl
VGltZVN0cmluZyhFeGVjU3RhdGUqLCBKU09iamVjCiBzdGF0aWMgSlNWYWx1ZSBKU0NfSE9TVF9D
QUxMIGRhdGVQcm90b0Z1bmNUb1N0cmluZyhFeGVjU3RhdGUqLCBKU09iamVjdCosIEpTVmFsdWUs
IGNvbnN0IEFyZ0xpc3QmKTsKIHN0YXRpYyBKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZGF0ZVByb3Rv
RnVuY1RvVGltZVN0cmluZyhFeGVjU3RhdGUqLCBKU09iamVjdCosIEpTVmFsdWUsIGNvbnN0IEFy
Z0xpc3QmKTsKIHN0YXRpYyBKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZGF0ZVByb3RvRnVuY1RvVVRD
U3RyaW5nKEV4ZWNTdGF0ZSosIEpTT2JqZWN0KiwgSlNWYWx1ZSwgY29uc3QgQXJnTGlzdCYpOwor
c3RhdGljIEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBkYXRlUHJvdG9GdW5jVG9JU09TdHJpbmcoRXhl
Y1N0YXRlKiwgSlNPYmplY3QqLCBKU1ZhbHVlLCBjb25zdCBBcmdMaXN0Jik7CiAKIH0KIApAQCAt
MzQyLDYgKzM0Myw3IEBAIGNvbnN0IENsYXNzSW5mbyBEYXRlUHJvdG90eXBlOjppbmZvID0geyJE
YXRlIiwgJkRhdGVJbnN0YW5jZTo6aW5mbywgMCwgRXhlY1N0YXRlCiAvKiBTb3VyY2UgZm9yIERh
dGVQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBkYXRlVGFibGUKICAgdG9TdHJpbmcgICAgICAgICAg
ICAgIGRhdGVQcm90b0Z1bmNUb1N0cmluZyAgICAgICAgICAgICAgICBEb250RW51bXxGdW5jdGlv
biAgICAgICAwCisgIHRvSVNPU3RyaW5nICAgICAgICAgICBkYXRlUHJvdG9GdW5jVG9JU09TdHJp
bmcgICAgICAgICAgICAgRG9udEVudW18RnVuY3Rpb24gICAgICAgMAogICB0b1VUQ1N0cmluZyAg
ICAgICAgICAgZGF0ZVByb3RvRnVuY1RvVVRDU3RyaW5nICAgICAgICAgICAgIERvbnRFbnVtfEZ1
bmN0aW9uICAgICAgIDAKICAgdG9EYXRlU3RyaW5nICAgICAgICAgIGRhdGVQcm90b0Z1bmNUb0Rh
dGVTdHJpbmcgICAgICAgICAgICBEb250RW51bXxGdW5jdGlvbiAgICAgICAwCiAgIHRvVGltZVN0
cmluZyAgICAgICAgICBkYXRlUHJvdG9GdW5jVG9UaW1lU3RyaW5nICAgICAgICAgICAgRG9udEVu
dW18RnVuY3Rpb24gICAgICAgMApAQCAtNDM4LDYgKzQ0MCwyOCBAQCBKU1ZhbHVlIEpTQ19IT1NU
X0NBTEwgZGF0ZVByb3RvRnVuY1RvVVRDU3RyaW5nKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3Qq
LCBKU1ZhbAogICAgIHJldHVybiBqc05vbnRyaXZpYWxTdHJpbmcoZXhlYywgZm9ybWF0RGF0ZVVU
Q1ZhcmlhbnQodCkgKyAiICIgKyBmb3JtYXRUaW1lKHQsIHV0YykpOwogfQogCitKU1ZhbHVlIEpT
Q19IT1NUX0NBTEwgZGF0ZVByb3RvRnVuY1RvSVNPU3RyaW5nKEV4ZWNTdGF0ZSogZXhlYywgSlNP
YmplY3QqLCBKU1ZhbHVlIHRoaXNWYWx1ZSwgY29uc3QgQXJnTGlzdCYpCit7CisgICAgaWYgKCF0
aGlzVmFsdWUuaXNPYmplY3QoJkRhdGVJbnN0YW5jZTo6aW5mbykpCisgICAgICAgIHJldHVybiB0
aHJvd0Vycm9yKGV4ZWMsIFR5cGVFcnJvcik7CisgICAgCisgICAgY29uc3QgYm9vbCB1dGMgPSB0
cnVlOworICAgIAorICAgIERhdGVJbnN0YW5jZSogdGhpc0RhdGVPYmogPSBhc0RhdGVJbnN0YW5j
ZSh0aGlzVmFsdWUpOyAKKyAgICBkb3VibGUgbWlsbGkgPSB0aGlzRGF0ZU9iai0+aW50ZXJuYWxO
dW1iZXIoKTsKKyAgICBpZiAoaXNuYW4obWlsbGkpKQorICAgICAgICByZXR1cm4ganNOb250cml2
aWFsU3RyaW5nKGV4ZWMsICJJbnZhbGlkIERhdGUiKTsKKyAgICAKKyAgICBHcmVnb3JpYW5EYXRl
VGltZSB0OworICAgIHRoaXNEYXRlT2JqLT5tc1RvR3JlZ29yaWFuRGF0ZVRpbWUobWlsbGksIHRy
dWUsIHQpOworICAgIC8vIE1heGltdW0gYW1vdW50IG9mIHNwYWNlIHdlIG5lZWQgaW4gYnVmZmVy
OiA2IChtYXguIGRpZ2l0cyBpbiB5ZWFyKSArIDIgKiA1ICgyIGNoYXJhY3RlcnMgZWFjaCBmb3Ig
bW9udGgsIGRheSwgaG91ciwgbWludXRlLCBzZWNvbmQpCisgICAgLy8gNiBmb3IgZm9ybWF0dGlu
ZyBhbmQgb25lIGZvciBudWxsIHRlcm1pbmF0aW9uID0gMjMuICBXZSBhZGQgb25lIGV4dHJhIGNo
YXJhY3RlciB0byBhbGxvdyB1cyB0byBmb3JjZSBudWxsIHRlcm1pbmF0aW9uLgorICAgIGNoYXIg
YnVmZmVyWzI0XTsKKyAgICBzbnByaW50ZihidWZmZXIsIHNpemVvZihidWZmZXIpIC0gMSwgIiUw
NGQtJTAyZC0lMDJkVCUwMmQ6JTAyZDolMDJkWiIsIDE5MDAgKyB0LnllYXIsIHQubW9udGggKyAx
LCB0Lm1vbnRoRGF5LCB0LmhvdXIsIHQubWludXRlLCB0LnNlY29uZCk7CisgICAgYnVmZmVyW3Np
emVvZihidWZmZXIpIC0gMV0gPSAwOworICAgIHJldHVybiBqc05vbnRyaXZpYWxTdHJpbmcoZXhl
YywgYnVmZmVyKTsKK30KKwogSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGRhdGVQcm90b0Z1bmNUb0Rh
dGVTdHJpbmcoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCosIEpTVmFsdWUgdGhpc1ZhbHVlLCBj
b25zdCBBcmdMaXN0JikKIHsKICAgICBpZiAoIXRoaXNWYWx1ZS5pc09iamVjdCgmRGF0ZUluc3Rh
bmNlOjppbmZvKSkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwppbmRleCA4MGM4ZDEwLi40OTRhYmQwIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMTgg
QEAKIDIwMDktMDYtMjEgIE9saXZlciBIdW50ICA8b2xpdmVyQGFwcGxlLmNvbT4KIAorICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBCdWcgMjY1OTQ6IEpTQyBu
ZWVkcyB0byBzdXBwb3J0IERhdGUudG9JU09TdHJpbmcKKyAgICAgICAgPGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNjU5ND4KKworICAgICAgICBBIGZldyBiYXNpYyBj
b3JyZWN0bmVzcyB0ZXN0cyBmb3IgRGF0ZS50b0lTT1N0cmluZy4KKworICAgICAgICAqIGZhc3Qv
anMvZGF0ZS10b2lzb3N0cmluZy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3Qv
anMvZGF0ZS10b2lzb3N0cmluZy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2pzL3Jlc291
cmNlcy9kYXRlLXRvaXNvc3RyaW5nLmpzOiBBZGRlZC4KKworMjAwOS0wNi0yMSAgT2xpdmVyIEh1
bnQgIDxvbGl2ZXJAYXBwbGUuY29tPgorCiAgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVy
IGFuZCBDYW1lcm9uIFp3YXJpY2guCiAKICAgICAgICAgQnVnIDI2NTg3OiBTdXBwb3J0IEpTT04u
cGFyc2UKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvanMvZGF0ZS10b2lzb3N0cmluZy1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2pzL2RhdGUtdG9pc29zdHJpbmctZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjM4MmQ3OTQKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2pzL2RhdGUtdG9pc29zdHJpbmctZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsMTQgQEAKK1Rlc3RzIGZvciBEYXRlLnRvSVNPU3RyaW5nCisKK09u
IHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxv
d2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIERhdGUudG9JU09TdHJpbmcuY2FsbCh7
fSkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogUmVzdWx0IG9mIGV4cHJlc3Npb24gJ0RhdGUu
dG9JU09TdHJpbmcnIFt1bmRlZmluZWRdIGlzIG5vdCBhbiBvYmplY3QuLgorUEFTUyBEYXRlLnRv
SVNPU3RyaW5nLmNhbGwoMCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogUmVzdWx0IG9mIGV4
cHJlc3Npb24gJ0RhdGUudG9JU09TdHJpbmcnIFt1bmRlZmluZWRdIGlzIG5vdCBhbiBvYmplY3Qu
LgorUEFTUyBuZXcgRGF0ZSgwKS50b0lTT1N0cmluZygpIGlzICcxOTcwLTAxLTAxVDAwOjAwOjAw
WicKK1BBU1MgbmV3IERhdGUoJzEgSmFudWFyeSAyMDAwIFVUQycpLnRvSVNPU3RyaW5nKCkgaXMg
JzIwMDAtMDEtMDFUMDA6MDA6MDBaJworUEFTUyBuZXcgRGF0ZSgnMSBNYXJjaCAyMDAwIFVUQycp
LnRvSVNPU3RyaW5nKCkgaXMgJzIwMDAtMDMtMDFUMDA6MDA6MDBaJworUEFTUyBzdWNjZXNzZnVs
bHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvanMvZGF0ZS10b2lzb3N0cmluZy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9qcy9k
YXRlLXRvaXNvc3RyaW5nLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4u
NDA0ZWUxOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvanMvZGF0ZS10b2lz
b3N0cmluZy5odG1sCkBAIC0wLDAgKzEsMTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8v
SUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hl
ZXQiIGhyZWY9InJlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0icmVz
b3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9
ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgc3Jj
PSJyZXNvdXJjZXMvZGF0ZS10b2lzb3N0cmluZy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0i
cmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2pzL3Jlc291cmNlcy9kYXRlLXRvaXNvc3RyaW5n
LmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9qcy9yZXNvdXJjZXMvZGF0ZS10b2lzb3N0cmluZy5qcwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42MTY2ZjI1Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9qcy9yZXNvdXJjZXMvZGF0ZS10b2lzb3N0cmluZy5qcwpA
QCAtMCwwICsxLDE0IEBACitkZXNjcmlwdGlvbigiVGVzdHMgZm9yIERhdGUudG9JU09TdHJpbmci
KTsKKworc2hvdWxkVGhyb3coIkRhdGUudG9JU09TdHJpbmcuY2FsbCh7fSkiKTsKK3Nob3VsZFRo
cm93KCJEYXRlLnRvSVNPU3RyaW5nLmNhbGwoMCkiKTsKKworc2hvdWxkQmUoIm5ldyBEYXRlKDAp
LnRvSVNPU3RyaW5nKCkiLCAiJzE5NzAtMDEtMDFUMDA6MDA6MDBaJyIpOworc2hvdWxkQmUoIm5l
dyBEYXRlKCcxIEphbnVhcnkgMTUwMCBVVEMnKS50b0lTT1N0cmluZygpIiwgIicxNTAwLTAxLTAx
VDAwOjAwOjAwWiciKTsKK3Nob3VsZEJlKCJuZXcgRGF0ZSgnMSBKYW51YXJ5IDIwMDAgVVRDJyku
dG9JU09TdHJpbmcoKSIsICInMjAwMC0wMS0wMVQwMDowMDowMFonIik7CitzaG91bGRCZSgibmV3
IERhdGUoJzEgSmFudWFyeSA0MDAwIFVUQycpLnRvSVNPU3RyaW5nKCkiLCAiJzQwMDAtMDEtMDFU
MDA6MDA6MDBaJyIpOworc2hvdWxkQmUoIm5ldyBEYXRlKCcxIEphbnVhcnkgMTAwMDAwIFVUQycp
LnRvSVNPU3RyaW5nKCkiLCAiJzEwMDAwMC0wMS0wMVQwMDowMDowMFonIik7CitzaG91bGRCZSgi
bmV3IERhdGUoJzEwIE1hcmNoIDIwMDAgVVRDJykudG9JU09TdHJpbmcoKSIsICInMjAwMC0wMy0x
MFQwMDowMDowMFonIik7CitzaG91bGRCZSgibmV3IERhdGUoTmFOKS50b0lTT1N0cmluZygpIiwg
IidJbnZhbGlkIERhdGUnIik7CisKK3N1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cg==
</data>
<flag name="review"
          id="16244"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
      

    </bug>

</bugzilla>