<?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>91579</bug_id>
          
          <creation_ts>2012-07-17 22:06:23 -0700</creation_ts>
          <short_desc>Decimal constructor with 99999999999999999 loses last digit</short_desc>
          <delta_ts>2012-07-18 18:17:17 -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>Platform</component>
          <version>528+ (Nightly build)</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>91481</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter>yosin</reporter>
          <assigned_to>yosin</assigned_to>
          <cc>ap</cc>
    
    <cc>tkent</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>671962</commentid>
    <comment_count>0</comment_count>
    <who name="">yosin</who>
    <bug_when>2012-07-17 22:06:23 -0700</bug_when>
    <thetext>There is a bug in Decimal::EncodedData constructor with maximum coefficient, 99999999999999999, in following line:


Decimal::EncodedData::EncodedData(Sign sign, int exponent, uint64_t coefficient)
{
  ...
    if (exponent &gt;= ExponentMin &amp;&amp; exponent &lt;= ExponentMax) {
        while (coefficient &gt;= MaxCoefficient) { // *** BUG, we should use &quot;&gt;&quot; instead of &quot;&gt;=&quot;.
            coefficient /= 10;
            ++exponent;
        }
    }
  ...
}</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>671965</commentid>
    <comment_count>1</comment_count>
      <attachid>152918</attachid>
    <who name="">yosin</who>
    <bug_when>2012-07-17 22:22:34 -0700</bug_when>
    <thetext>Created attachment 152918
Patch 1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>671968</commentid>
    <comment_count>2</comment_count>
      <attachid>152918</attachid>
    <who name="">yosin</who>
    <bug_when>2012-07-17 22:23:31 -0700</bug_when>
    <thetext>Comment on attachment 152918
Patch 1

Could you review this patch?
Thanks in advance.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>671983</commentid>
    <comment_count>3</comment_count>
      <attachid>152918</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2012-07-17 22:36:10 -0700</bug_when>
    <thetext>Comment on attachment 152918
Patch 1

looks ok</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>672041</commentid>
    <comment_count>4</comment_count>
      <attachid>152918</attachid>
    <who name="">yosin</who>
    <bug_when>2012-07-17 23:50:34 -0700</bug_when>
    <thetext>Comment on attachment 152918
Patch 1

Clearing flags on attachment: 152918

Committed r122922: &lt;http://trac.webkit.org/changeset/122922&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>672042</commentid>
    <comment_count>5</comment_count>
    <who name="">yosin</who>
    <bug_when>2012-07-17 23:50:39 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>672511</commentid>
    <comment_count>6</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-07-18 10:41:43 -0700</bug_when>
    <thetext>This is fixing Platform code. Is that code used anywhere? An actual regression test would be vastly preferable to a unit test (which is not even cross-platform!)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>673047</commentid>
    <comment_count>7</comment_count>
    <who name="">yosin</who>
    <bug_when>2012-07-18 18:17:17 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; This is fixing Platform code. Is that code used anywhere? An actual regression test would be vastly preferable to a unit test (which is not even cross-platform!)

The code is used in step-able input types, number, date, range, datetime, and so on. Although, it is hard to hit this case from HTML5/JavaScript, because the value is out of range of double.

The purpose of fixing this is for test case (bug 91481) and that test case is supplement for LayoutTest.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>152918</attachid>
            <date>2012-07-17 22:22:34 -0700</date>
            <delta_ts>2012-07-17 23:50:34 -0700</delta_ts>
            <desc>Patch 1</desc>
            <filename>bug-91579-20120718142233.patch</filename>
            <type>text/plain</type>
            <size>5666</size>
            <attacher>yosin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIyOTE2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDcxZmY2YzNmZWY0NGRl
ZjUzYWNkYjE3NDNlM2JlMmNhZTE3N2VjNi4uZjVlOWQwN2MwNmM1YjcwMDE5ZmJlMWNmYWQwMzhl
Mzk4Y2FiYzNkZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDEyLTA3LTE4ICBZb3No
aWZ1bWkgSW5vdWUgIDx5b3NpbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgRGVjaW1hbCBjb25z
dHJ1Y3RvciB3aXRoIDk5OTk5OTk5OTk5OTk5OTk5IGxvc2VzIGxhc3QgZGlnaXQKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTkxNTc5CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBjaGFuZ2Vz
IG1heGltdW0gY29lZmZpY2llbnQgdmFsdWUgaGFuZGxpbmcgaW4gRGVjaW1hbDo6RW5jb2RlZERh
dGEKKyAgICAgICAgY29uc3RydWN0b3Igbm90IHRvIGxvc2UgdGhlIGxhc3QgZGlnaXQuIEl0IHdh
cyB1c2VkICI+PSIgb3BlcmF0b3IgZm9yCisgICAgICAgIGNvbXBhcmlzb24gaW5zdGVhZCBvZiAi
PiIgb3BlcmF0b3IuCisKKyAgICAgICAgVGVzdHM6IFdlYktpdC9jaHJvbWl1bS90ZXN0cy9EZWNp
bWFsVGVzdC5jcHAKKworICAgICAgICAqIHBsYXRmb3JtL0RlY2ltYWwuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6RGVjaW1hbDo6RW5jb2RlZERhdGE6OkVuY29kZWREYXRhKTogUmVwbGFjZSAiPj0i
IHRvICI+IiBmb3IKKyAgICAgICAgbm90IGdldHRpbmcgcmlkIG9mIHRoZSBsYXN0IGRpZ2l0IGZv
ciBtYXhpbXVtIGNvZWZmaWNpZW50IHZhbHVlLgorCiAyMDEyLTA3LTE3ICBNT1JJVEEgSGFqaW1l
IDxtb3JyaXRhQGdvb2dsZS5jb20+CiAKICAgICAgICAgW1NoYWRvdyBET01dIFNvbWUgZGlzdHJp
YnV0aW9uIGludmFsaWRhdGlvbiBjYW4gZHJvcCBuZWNlc3NhcnkgcmVhdHRhY2htZW50LgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL0NoYW5nZUxvZwppbmRleCA0N2QzYzRiZWNjZmNlYTNlMDY5MjhkOTYyYTkwYTky
ZmQyMTEzZjlmLi4xZjBiMDY4M2RkYzBkZDkxOTgzZWViOTMxZjliYWQxMjk2YWJjMDlhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEyLTA3LTE4ICBZb3No
aWZ1bWkgSW5vdWUgIDx5b3NpbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgRGVjaW1hbCBjb25z
dHJ1Y3RvciB3aXRoIDk5OTk5OTk5OTk5OTk5OTk5IGxvc2VzIGxhc3QgZGlnaXQKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTkxNTc5CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIHRl
c3QgY2FzZXMgZm9yIERlY2ltYWw6OkVuY29kZWREYXRhIGNvbnN0cnVjdG9ycyBmb3IKKyAgICAg
ICAgdGVzdGluZyBlZGdlIGNhc2VzIGluIGFkZGl0aW9uIHRvIGNvbW1vbiBjYXNlcyB3aGljaCB0
aGV5IGFyZW4ndAorICAgICAgICBjb3ZlcmVkIGJ5IG90aGVyIHRlc3QgY2FzZXMuCisKKyAgICAg
ICAgKiB0ZXN0cy9EZWNpbWFsVGVzdC5jcHA6CisgICAgICAgIChFWFBFQ1RfREVDSU1BTF9FTkNP
REVEX0RBVEFfRVEpOiBJbnRyb2R1Y2UgYSBuZXcgbWFjcm8gZm9yIGVhc2Ugb2YKKyAgICAgICAg
d3JpdGluZyB0ZXN0IGNhc2VzIGZvciB2ZXJpZnlpbmcgY29tcG9uZW50cyBvZiBEZWNpbWFsOjpF
bmNvZGVkRGF0YS4KKyAgICAgICAgKFRFU1RfRik6IEFkZGVkIGEgbmV3IHRlc3QgZW50cnkgRGVj
aW1hbFRlc3QuQ29uc3RydWN0b3IuCisKIDIwMTItMDctMTcgIFlvc2hpZnVtaSBJbm91ZSAgPHlv
c2luQGNocm9taXVtLm9yZz4KIAogICAgICAgICBUZXN0IGNhc2VzIGluIERlY2ltYWxUZXN0IHNo
b3VsZCB1c2UgRVhQRUNUX1NUUkVRIGZvciBlYXNlIG9mIGRlYnVnZ2luZyB0ZXN0IGNhc2UKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0RlY2ltYWwuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vRGVjaW1hbC5jcHAKaW5kZXggM2JiNjU3MGI1MTRkODJhNmYxMjkwN2Fl
Mzc1MzMwZWJkMjY3OGQ4MS4uMTQ3MmRjMTJhOTI2NWJmMjhmMzk2YjhjZTMyMzdjODU5Y2JmZTA4
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vRGVjaW1hbC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vRGVjaW1hbC5jcHAKQEAgLTI0Niw3ICsyNDYsNyBAQCBE
ZWNpbWFsOjpFbmNvZGVkRGF0YTo6RW5jb2RlZERhdGEoU2lnbiBzaWduLCBpbnQgZXhwb25lbnQs
IHVpbnQ2NF90IGNvZWZmaWNpZW50KQogICAgICwgbV9zaWduKHNpZ24pCiB7CiAgICAgaWYgKGV4
cG9uZW50ID49IEV4cG9uZW50TWluICYmIGV4cG9uZW50IDw9IEV4cG9uZW50TWF4KSB7Ci0gICAg
ICAgIHdoaWxlIChjb2VmZmljaWVudCA+PSBNYXhDb2VmZmljaWVudCkgeworICAgICAgICB3aGls
ZSAoY29lZmZpY2llbnQgPiBNYXhDb2VmZmljaWVudCkgewogICAgICAgICAgICAgY29lZmZpY2ll
bnQgLz0gMTA7CiAgICAgICAgICAgICArK2V4cG9uZW50OwogICAgICAgICB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL0RlY2ltYWxUZXN0LmNwcCBiL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vdGVzdHMvRGVjaW1hbFRlc3QuY3BwCmluZGV4IGI1OTYzMDhjMjEzOGMy
ZjExNzhiODZjNzUwYjhiZjAzMDViZWUwYjcuLmJmNzRlYTc4ZTQzMGIzMjc1YzE2YmI1NmY1MjQ0
ZWRjYWEwZjRiMDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvRGVj
aW1hbFRlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvRGVjaW1hbFRl
c3QuY3BwCkBAIC0xMTIsNiArMTEyLDEyIEBAIHByb3RlY3RlZDoKICAgICB9CiB9OwogCisvLyBG
SVhNRTogV2Ugc2hvdWxkIHVzZSBleHBlY3RlZFNpZ24gd2l0aG91dCAiRGVjaW1hbDo6IiwgaG93
ZXZlciwgZysrIGNhdXNlcyB1bmRlZmluZWQgcmVmZXJlbmNlcyBmb3IgRGVjaW1hbFRlc3Q6OlBv
c2l0aXZlIGFuZCBOZWdhdGl2ZS4KKyNkZWZpbmUgRVhQRUNUX0RFQ0lNQUxfRU5DT0RFRF9EQVRB
X0VRKGV4cGVjdGVkQ29lZmZpY2llbnQsIGV4cGVjdGVkRXhwb25lbnQsICBleHBlY3RlZFNpZ24s
IGRlY2ltYWwpIFwKKyAgICBFWFBFQ1RfRVEoKGV4cGVjdGVkQ29lZmZpY2llbnQpLCAoZGVjaW1h
bCkudmFsdWUoKS5jb2VmZmljaWVudCgpKTsgXAorICAgIEVYUEVDVF9FUSgoZXhwZWN0ZWRFeHBv
bmVudCksIChkZWNpbWFsKS52YWx1ZSgpLmV4cG9uZW50KCkpOyBcCisgICAgRVhQRUNUX0VRKERl
Y2ltYWw6OmV4cGVjdGVkU2lnbiwgKGRlY2ltYWwpLnZhbHVlKCkuc2lnbigpKTsKKwogI2RlZmlu
ZSBFWFBFQ1RfREVDSU1BTF9TVFJFUShleHBlY3RlZCwgZGVjaW1hbCkgRVhQRUNUX1NUUkVRKChl
eHBlY3RlZCksIChkZWNpbWFsKS50b1N0cmluZygpLmFzY2lpKCkuZGF0YSgpKQogCiBURVNUX0Yo
RGVjaW1hbFRlc3QsIEFicykKQEAgLTQ0Nyw2ICs0NTMsMjggQEAgVEVTVF9GKERlY2ltYWxUZXN0
LCBDb21wYXJlU3BlY2lhbFZhbHVlcykKICAgICBFWFBFQ1RfVFJVRShOYU4gPj0gTmFOKTsKIH0K
IAorVEVTVF9GKERlY2ltYWxUZXN0LCBDb25zdHJ1Y3RvcikKK3sKKyAgICBFWFBFQ1RfREVDSU1B
TF9FTkNPREVEX0RBVEFfRVEoMHUsIDAsIFBvc2l0aXZlLCBlbmNvZGUoMCwgMCwgUG9zaXRpdmUp
KTsKKyAgICBFWFBFQ1RfREVDSU1BTF9FTkNPREVEX0RBVEFfRVEoMHUsIDAsIE5lZ2F0aXZlLCBl
bmNvZGUoMCwgMCwgTmVnYXRpdmUpKTsKKyAgICBFWFBFQ1RfREVDSU1BTF9FTkNPREVEX0RBVEFf
RVEoMXUsIDAsIFBvc2l0aXZlLCBlbmNvZGUoMSwgMCwgUG9zaXRpdmUpKTsKKyAgICBFWFBFQ1Rf
REVDSU1BTF9FTkNPREVEX0RBVEFfRVEoMXUsIDAsIE5lZ2F0aXZlLCBlbmNvZGUoMSwgMCwgTmVn
YXRpdmUpKTsKKyAgICBFWFBFQ1RfREVDSU1BTF9FTkNPREVEX0RBVEFfRVEoMXUsIDEwMjIsIFBv
c2l0aXZlLCBlbmNvZGUoMSwgMTAyMiwgUG9zaXRpdmUpKTsKKyAgICBFWFBFQ1RfREVDSU1BTF9F
TkNPREVEX0RBVEFfRVEoMXUsIDEwMjIsIE5lZ2F0aXZlLCBlbmNvZGUoMSwgMTAyMiwgTmVnYXRp
dmUpKTsKKyAgICBFWFBFQ1RfREVDSU1BTF9FTkNPREVEX0RBVEFfRVEoMXUsIDEwMjMsIFBvc2l0
aXZlLCBlbmNvZGUoMSwgMTAyMywgUG9zaXRpdmUpKTsKKyAgICBFWFBFQ1RfREVDSU1BTF9FTkNP
REVEX0RBVEFfRVEoMXUsIDEwMjMsIE5lZ2F0aXZlLCBlbmNvZGUoMSwgMTAyMywgTmVnYXRpdmUp
KTsKKyAgICBFWFBFQ1RfVFJVRShlbmNvZGUoMSwgMjAwMCwgUG9zaXRpdmUpLmlzSW5maW5pdHko
KSk7CisgICAgRVhQRUNUX1RSVUUoZW5jb2RlKDEsIDIwMDAsIE5lZ2F0aXZlKS5pc0luZmluaXR5
KCkpOworICAgIEVYUEVDVF9ERUNJTUFMX0VOQ09ERURfREFUQV9FUSgwdSwgMCwgUG9zaXRpdmUs
IGVuY29kZSgxLCAtMjAwMCwgUG9zaXRpdmUpKTsKKyAgICBFWFBFQ1RfREVDSU1BTF9FTkNPREVE
X0RBVEFfRVEoMHUsIDAsIE5lZ2F0aXZlLCBlbmNvZGUoMSwgLTIwMDAsIE5lZ2F0aXZlKSk7Cisg
ICAgRVhQRUNUX0RFQ0lNQUxfRU5DT0RFRF9EQVRBX0VRKFVJTlQ2NF9DKDk5OTk5OTk5OTk5OTk5
OTk4KSwgMCwgUG9zaXRpdmUsIGVuY29kZShVSU5UNjRfQyg5OTk5OTk5OTk5OTk5OTk5OCksIDAs
IFBvc2l0aXZlKSk7CisgICAgRVhQRUNUX0RFQ0lNQUxfRU5DT0RFRF9EQVRBX0VRKFVJTlQ2NF9D
KDk5OTk5OTk5OTk5OTk5OTk4KSwgMCwgTmVnYXRpdmUsIGVuY29kZShVSU5UNjRfQyg5OTk5OTk5
OTk5OTk5OTk5OCksIDAsIE5lZ2F0aXZlKSk7CisgICAgRVhQRUNUX0RFQ0lNQUxfRU5DT0RFRF9E
QVRBX0VRKFVJTlQ2NF9DKDk5OTk5OTk5OTk5OTk5OTk5KSwgMCwgUG9zaXRpdmUsIGVuY29kZShV
SU5UNjRfQyg5OTk5OTk5OTk5OTk5OTk5OSksIDAsIFBvc2l0aXZlKSk7CisgICAgRVhQRUNUX0RF
Q0lNQUxfRU5DT0RFRF9EQVRBX0VRKFVJTlQ2NF9DKDk5OTk5OTk5OTk5OTk5OTk5KSwgMCwgTmVn
YXRpdmUsIGVuY29kZShVSU5UNjRfQyg5OTk5OTk5OTk5OTk5OTk5OSksIDAsIE5lZ2F0aXZlKSk7
CisgICAgRVhQRUNUX0RFQ0lNQUxfRU5DT0RFRF9EQVRBX0VRKFVJTlQ2NF9DKDEwMDAwMDAwMDAw
MDAwMDAwKSwgMSwgUG9zaXRpdmUsIGVuY29kZShVSU5UNjRfQygxMDAwMDAwMDAwMDAwMDAwMDAp
LCAwLCBQb3NpdGl2ZSkpOworICAgIEVYUEVDVF9ERUNJTUFMX0VOQ09ERURfREFUQV9FUShVSU5U
NjRfQygxMDAwMDAwMDAwMDAwMDAwMCksIDEsIE5lZ2F0aXZlLCBlbmNvZGUoVUlOVDY0X0MoMTAw
MDAwMDAwMDAwMDAwMDAwKSwgMCwgTmVnYXRpdmUpKTsKK30KKwogVEVTVF9GKERlY2ltYWxUZXN0
LCBEaXZpc2lvbikKIHsKICAgICBFWFBFQ1RfRVEoZW5jb2RlKDAsIDAsIFBvc2l0aXZlKSwgRGVj
aW1hbCgwKSAvIERlY2ltYWwoMSkpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>