harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Richard Zschech (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HARMONY-6406) Combination of multiply and compareTo BigDecimal methods returns unexpected result
Date Thu, 17 Dec 2009 10:50:18 GMT

    [ https://issues.apache.org/jira/browse/HARMONY-6406?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12791869#action_12791869
] 

Richard Zschech commented on HARMONY-6406:
------------------------------------------

I've found the issue in the aproxPrecision method:

private int aproxPrecision() {
        return ((precision > 0)
        ? precision
                : (int)((this.bitLength - 1) * LOG10_2) + 1);
}

The "+ 1" should only be applied to the computed approximation not to the previously computed
precision by moving the first bracket on line 2 to line 4:

private int aproxPrecision() {
        return (precision > 0)
        ? precision
                : ((int)((this.bitLength - 1) * LOG10_2) + 1) ;
}

> Combination of multiply and compareTo BigDecimal methods returns unexpected result
> ----------------------------------------------------------------------------------
>
>                 Key: HARMONY-6406
>                 URL: https://issues.apache.org/jira/browse/HARMONY-6406
>             Project: Harmony
>          Issue Type: Bug
>          Components: Classlib
>    Affects Versions: 5.0M12
>            Reporter: Richard Zschech
>
> The following test fails:
> BigDecimal testInstance = BigDecimal.TEN.multiply(new BigDecimal("0.1"));
> int result = testInstance.compareTo(new BigDecimal("1.00"));
> assertEquals(0, result);
> I expect 'result' to be 0, but am obtaining -1.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message