summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMark Dickinson <dickinsm@gmail.com>2009-10-27 16:54:45 (GMT)
committerMark Dickinson <dickinsm@gmail.com>2009-10-27 16:54:45 (GMT)
commit5e672d0ed685d96f93794e31c032e6259f997812 (patch)
treef82edafbf33fb6973007601293e7e4530043abde
parent0bea8443cf6982a919da5e3edcc1502e2770aec4 (diff)
downloadcpython-5e672d0ed685d96f93794e31c032e6259f997812.zip
cpython-5e672d0ed685d96f93794e31c032e6259f997812.tar.gz
cpython-5e672d0ed685d96f93794e31c032e6259f997812.tar.bz2
Merged revisions 75275 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk ........ r75275 | mark.dickinson | 2009-10-07 20:22:05 +0100 (Wed, 07 Oct 2009) | 6 lines Issue #7048: logb should round its result when that result doesn't fit into the available precision. (Tests for this change are included in the most recent set of testcases from the Decimal Specification site; those testcases will be updated shortly.) ........
-rw-r--r--Lib/decimal.py3
-rw-r--r--Misc/NEWS3
2 files changed, 5 insertions, 1 deletions
diff --git a/Lib/decimal.py b/Lib/decimal.py
index 4324430..d589fd7 100644
--- a/Lib/decimal.py
+++ b/Lib/decimal.py
@@ -3083,7 +3083,8 @@ class Decimal(object):
# otherwise, simply return the adjusted exponent of self, as a
# Decimal. Note that no attempt is made to fit the result
# into the current context.
- return Decimal(self.adjusted())
+ ans = Decimal(self.adjusted())
+ return ans._fix(context)
def _islogical(self):
"""Return True if self is a logical operand.
diff --git a/Misc/NEWS b/Misc/NEWS
index 53d1721..a1a53a7 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -22,6 +22,9 @@ Core and Builtins
Library
-------
+- Issue #7048: Force Decimal.logb to round its result when that result
+ is too large to fit in the current precision.
+
Tests
-----