summaryrefslogtreecommitdiffstats
path: root/Objects
diff options
context:
space:
mode:
authorGeorg Brandl <georg@python.org>2005-09-16 06:42:32 (GMT)
committerGeorg Brandl <georg@python.org>2005-09-16 06:42:32 (GMT)
commit39871c89275ed0d1cbb67650e3f366bb861edb82 (patch)
tree27b87865104088012a7248f91a938207e38992a7 /Objects
parent75634db73f2444771c76ae181794aba84c9b3df4 (diff)
downloadcpython-39871c89275ed0d1cbb67650e3f366bb861edb82.zip
cpython-39871c89275ed0d1cbb67650e3f366bb861edb82.tar.gz
cpython-39871c89275ed0d1cbb67650e3f366bb861edb82.tar.bz2
backport patch [ 1118729 ] Error in representation of complex numbers(again)
Diffstat (limited to 'Objects')
-rw-r--r--Objects/complexobject.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/Objects/complexobject.c b/Objects/complexobject.c
index 81bcca8..138ba80 100644
--- a/Objects/complexobject.c
+++ b/Objects/complexobject.c
@@ -279,15 +279,12 @@ complex_to_buf(char *buf, int bufsz, PyComplexObject *v, int precision)
strncat(buf, "j", bufsz);
} else {
char re[64], im[64];
- char *fmt;
+ /* Format imaginary part with sign, real part without */
PyOS_snprintf(format, 32, "%%.%ig", precision);
PyOS_ascii_formatd(re, 64, format, v->cval.real);
+ PyOS_snprintf(format, 32, "%%+.%ig", precision);
PyOS_ascii_formatd(im, 64, format, v->cval.imag);
- if (v->cval.imag < 0.)
- fmt = "(%s%sj)";
- else
- fmt = "(%s+%sj)";
- PyOS_snprintf(buf, bufsz, fmt, re, im);
+ PyOS_snprintf(buf, bufsz, "(%s%sj)", re, im);
}
}