This code is actually not used unless WITHOUT_COMPLEX is defined.

However, there was no error checking that PyFloat_FromDouble returned
a valid pointer.  I believe this change is correct as it seemed
to follow other code in the area.

Klocwork # 292.
This commit is contained in:
Neal Norwitz 2006-08-12 01:47:59 +00:00
parent 43bd4db933
commit edb2168079
1 changed files with 8 additions and 0 deletions

View File

@ -213,6 +213,10 @@ w_object(PyObject *v, WFILE *p)
w_byte(TYPE_COMPLEX, p);
temp = (PyFloatObject*)PyFloat_FromDouble(
PyComplex_RealAsDouble(v));
if (!temp) {
p->error = 1;
return;
}
PyFloat_AsReprString(buf, temp);
Py_DECREF(temp);
n = strlen(buf);
@ -220,6 +224,10 @@ w_object(PyObject *v, WFILE *p)
w_string(buf, (int)n, p);
temp = (PyFloatObject*)PyFloat_FromDouble(
PyComplex_ImagAsDouble(v));
if (!temp) {
p->error = 1;
return;
}
PyFloat_AsReprString(buf, temp);
Py_DECREF(temp);
n = strlen(buf);