summaryrefslogtreecommitdiffstats
path: root/Lib
diff options
context:
space:
mode:
authorMark Dickinson <dickinsm@gmail.com>2009-09-07 16:21:56 (GMT)
committerMark Dickinson <dickinsm@gmail.com>2009-09-07 16:21:56 (GMT)
commit7718d2bfb040efb63f5fa90691efb295ef962cb2 (patch)
tree7a46c73af9c296ea16439579274a96608bf46b67 /Lib
parentd9ee87a43d1cc0f3d5e65fc6ed30c12c52ef58a0 (diff)
downloadcpython-7718d2bfb040efb63f5fa90691efb295ef962cb2.zip
cpython-7718d2bfb040efb63f5fa90691efb295ef962cb2.tar.gz
cpython-7718d2bfb040efb63f5fa90691efb295ef962cb2.tar.bz2
Merged revisions 74704 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk ........ r74704 | mark.dickinson | 2009-09-07 17:17:41 +0100 (Mon, 07 Sep 2009) | 3 lines Issue #6850: Fix bug in Decimal._parse_format_specifier for formats with no type specifier. ........
Diffstat (limited to 'Lib')
-rw-r--r--Lib/decimal.py2
-rw-r--r--Lib/test/test_decimal.py3
2 files changed, 4 insertions, 1 deletions
diff --git a/Lib/decimal.py b/Lib/decimal.py
index 8d82cb9..e3af3f0 100644
--- a/Lib/decimal.py
+++ b/Lib/decimal.py
@@ -5592,7 +5592,7 @@ def _parse_format_specifier(format_spec, _localeconv=None):
# if format type is 'g' or 'G' then a precision of 0 makes little
# sense; convert it to 1. Same if format type is unspecified.
if format_dict['precision'] == 0:
- if format_dict['type'] in 'gG' or format_dict['type'] is None:
+ if format_dict['type'] is None or format_dict['type'] in 'gG':
format_dict['precision'] = 1
# determine thousands separator, grouping, and decimal separator, and
diff --git a/Lib/test/test_decimal.py b/Lib/test/test_decimal.py
index 927fd1a..f0c4431 100644
--- a/Lib/test/test_decimal.py
+++ b/Lib/test/test_decimal.py
@@ -749,6 +749,9 @@ class DecimalFormatTest(unittest.TestCase):
(',%', '123.456789', '12,345.6789%'),
(',e', '123456', '1.23456e+5'),
(',E', '123456', '1.23456E+5'),
+
+ # issue 6850
+ ('a=-7.0', '0.12345', 'aaaa0.1'),
]
for fmt, d, result in test_values:
self.assertEqual(format(Decimal(d), fmt), result)