<?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>6259</bug_id>
          
          <creation_ts>2005-12-27 13:57:31 -0800</creation_ts>
          <short_desc>Handle negative, FP numbers with non-10 radix in toString</short_desc>
          <delta_ts>2005-12-30 00:13:22 -0800</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>420+</version>
          <rep_platform>Other</rep_platform>
          <op_sys>Linux</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="Maks Orlovich">maksim</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>26797</commentid>
    <comment_count>0</comment_count>
    <who name="Maks Orlovich">maksim</who>
    <bug_when>2005-12-27 13:57:31 -0800</bug_when>
    <thetext>r260470 | porten | 2003-10-20 10:45:55 -0400 (Mon, 20 Oct 2003) | 2 lines 
This is a merge of: 
       * number_object.cpp: rewrote Number.toString(radix) to work with  
       negative numbers, floating point and very large numbers.  
 
As ammended by:  
r290299 | porten | 2004-02-22 13:32:05 -0500 (Sun, 22 Feb 2004) | 4 lines  
fixed crash if toString() is called on NaN or Inf with a radix != 10.)  
  
It&apos;s somewhat covered by KJS tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>26798</commentid>
    <comment_count>1</comment_count>
      <attachid>5309</attachid>
    <who name="Maks Orlovich">maksim</who>
    <bug_when>2005-12-27 13:58:10 -0800</bug_when>
    <thetext>Created attachment 5309
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27081</commentid>
    <comment_count>2</comment_count>
      <attachid>5309</attachid>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2005-12-28 21:23:38 -0800</bug_when>
    <thetext>Comment on attachment 5309
patch

I&apos;ll grant review because I think  it&apos;s better to have this change than not.
However:

&gt; +      const double eps = 0.001; // TODO: guessed. base on radix ?

That seems like a pretty high value for epsilon.

&gt; int(d)
&gt; double(radix)

(in various places) - it would be better to avoid this cast syntax for numbers,
I think. In some cases I think it is unnecesary, in other cases a normal
c-style cast or assigning first to a variable of the appropriate type would be
better.

I think these improvements can be made in a separate pass though.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>5309</attachid>
            <date>2005-12-27 13:58:10 -0800</date>
            <delta_ts>2005-12-28 21:23:38 -0800</delta_ts>
            <desc>patch</desc>
            <filename>num_obj.diff</filename>
            <type>text/plain</type>
            <size>2344</size>
            <attacher name="Maks Orlovich">maksim</attacher>
            
              <data encoding="base64">SW5kZXg6IG51bWJlcl9vYmplY3QuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIG51bWJlcl9vYmplY3QuY3Bw
CShyZXZpc2lvbiA0OTE2NzUpCisrKyBudW1iZXJfb2JqZWN0LmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMSw3ICsxLDcgQEAKIC8vIC0qLSBjLWJhc2ljLW9mZnNldDogMiAtKi0KIC8qCiAgKiAgVGhp
cyBmaWxlIGlzIHBhcnQgb2YgdGhlIEtERSBsaWJyYXJpZXMKLSAqICBDb3B5cmlnaHQgKEMpIDE5
OTktMjAwMCBIYXJyaSBQb3J0ZW4gKHBvcnRlbkBrZGUub3JnKQorICogIENvcHlyaWdodCAoQykg
MTk5OS0yMDAwLDIwMDMgSGFycmkgUG9ydGVuIChwb3J0ZW5Aa2RlLm9yZykKICAqCiAgKiAgVGhp
cyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9v
cgogICogIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJh
bCBQdWJsaWMKQEAgLTE0MCwxNCArMTQwLDQ2IEBAIFZhbHVlSW1wICpOdW1iZXJQcm90b0Z1bmNJ
bXA6OmNhbGxBc0Z1bmMKICAgICAgIGRyYWRpeCA9IGFyZ3NbMF0tPnRvSW50ZWdlcihleGVjKTsK
ICAgICBpZiAoZHJhZGl4ID49IDIgJiYgZHJhZGl4IDw9IDM2ICYmIGRyYWRpeCAhPSAxMCkgeyAv
LyBmYWxzZSBmb3IgTmFOCiAgICAgICBpbnQgcmFkaXggPSBzdGF0aWNfY2FzdDxpbnQ+KGRyYWRp
eCk7Ci0gICAgICB1bnNpZ25lZCBpID0gdi0+dG9VSW50MzIoZXhlYyk7Ci0gICAgICBjaGFyIHNb
MzNdOwotICAgICAgY2hhciAqcCA9IHMgKyBzaXplb2Yocyk7Ci0gICAgICAqLS1wID0gJ1wwJzsK
KyAgICAgIGNvbnN0IGNoYXIgZGlnaXRzW10gPSAiMDEyMzQ1Njc4OWFiY2RlZmdoaWprbG1ub3Bx
cnN0dXZ3eHl6IjsKKyAgICAgIC8vIElOVF9NQVggcmVzdWx0cyBpbiAxMDI0IGNoYXJhY3RlcnMg
bGVmdCBvZiB0aGUgZG90IHdpdGggcmFkaXggMgorICAgICAgLy8gZ2l2ZSB0aGUgc2FtZSBzcGFj
ZSBvbiB0aGUgcmlnaHQgc2lkZS4gc2FmZXR5IGNoZWNrcyBhcmUgaW4gcGxhY2UKKyAgICAgIC8v
IHVubGVzcyBzb21lb25lIGZpbmRzIGEgcHJlY2lzZSBydWxlLgorICAgICAgY2hhciBzWzIwNDgg
KyAzXTsKKyAgICAgIGRvdWJsZSB4ID0gdi0+dG9OdW1iZXIoZXhlYyk7CisgICAgICBpZiAoaXNO
YU4oeCkgfHwgaXNJbmYoeCkpCisgICAgICAgIHJldHVybiBTdHJpbmcoVVN0cmluZzo6ZnJvbSh4
KSk7CisKKyAgICAgIC8vIGFwcGx5IGFsZ29yaXRobSBvbiBhYnNvbHV0ZSB2YWx1ZS4gYWRkIHNp
Z24gbGF0ZXIuCisgICAgICBib29sIG5lZyA9IGZhbHNlOworICAgICAgaWYgKHggPCAwLjApIHsK
KyAgICAgICAgbmVnID0gdHJ1ZTsKKyAgICAgICAgeCA9IC14OworICAgICAgfQorICAgICAgLy8g
Y29udmVydCBpbnRlZ2VyIHBvcnRpb24KKyAgICAgIGRvdWJsZSBmID0gZmxvb3IoeCk7CisgICAg
ICBkb3VibGUgZCA9IGY7CisgICAgICBjaGFyICpkb3QgPSBzICsgc2l6ZW9mKHMpIC8gMjsKKyAg
ICAgIGNoYXIgKnAgPSBkb3Q7CisgICAgICAqcCA9ICdcMCc7CiAgICAgICBkbyB7Ci0gICAgICAg
ICotLXAgPSAiMDEyMzQ1Njc4OWFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6IltpICUgcmFkaXhd
OwotICAgICAgICBpIC89IHJhZGl4OwotICAgICAgfSB3aGlsZSAoaSk7CisgICAgICAgICotLXAg
PSBkaWdpdHNbaW50KGZtb2QoZCwgZG91YmxlKHJhZGl4KSkpXTsKKyAgICAgICAgZCAvPSByYWRp
eDsKKyAgICAgIH0gd2hpbGUgKChkIDw9IC0xLjAgfHwgZCA+PSAxLjApICYmIHAgPiBzKTsKKyAg
ICAgIC8vIGFueSBkZWNpbWFsIGZyYWN0aW9uID8KKyAgICAgIGQgPSB4IC0gZjsKKyAgICAgIGNv
bnN0IGRvdWJsZSBlcHMgPSAwLjAwMTsgLy8gVE9ETzogZ3Vlc3NlZC4gYmFzZSBvbiByYWRpeCA/
CisgICAgICBpZiAoZCA8IC1lcHMgfHwgZCA+IGVwcykgeworICAgICAgICAqZG90KysgPSAnLic7
CisgICAgICAgIGRvIHsKKyAgICAgICAgICBkICo9IHJhZGl4OworICAgICAgICAgICpkb3QrKyA9
IGRpZ2l0c1tpbnQoZCldOworICAgICAgICAgIGQgLT0gaW50KGQpOworICAgICAgICB9IHdoaWxl
ICgoZCA8IC1lcHMgfHwgZCA+IGVwcykgJiYgZG90IC0gcyA8IGludChzaXplb2YocykpIC0gMSk7
CisgICAgICAgICpkb3QgPSAnXDAnOworICAgICAgfQorICAgICAgLy8gYWRkIHNpZ24gaWYgbmVn
YXRpdmUKKyAgICAgIGlmIChuZWcpCisgICAgICAgICotLXAgPSAnLSc7CiAgICAgICByZXR1cm4g
U3RyaW5nKHApOwogICAgIH0gZWxzZQogICAgICAgcmV0dXJuIFN0cmluZyh2LT50b1N0cmluZyhl
eGVjKSk7Cg==
</data>
<flag name="review"
          id="1116"
          type_id="1"
          status="+"
          setter="mjs"
    />
          </attachment>
      

    </bug>

</bugzilla>