Mercurial > cpython-lru_cache-weakref
diff Python/marshal.c @ 40527:195f689af5af
Remove PyFloat_AsReprString() and PyFloat_AsString() which should not
have been public due to passing buffers without lengths.
| author | Neal Norwitz <nnorwitz@gmail.com> |
|---|---|
| date | Thu, 28 Dec 2006 04:45:06 +0000 |
| parents | cc992d75d5b3 |
| children | 4aee3f672f77 |
line wrap: on
line diff
--- a/Python/marshal.c Tue Dec 19 22:06:09 2006 +0000 +++ b/Python/marshal.c Thu Dec 28 04:45:06 2006 +0000 @@ -182,8 +182,8 @@ } else { char buf[256]; /* Plenty to format any double */ - PyFloat_AsReprString(buf, (PyFloatObject *)v); - n = strlen(buf); + n = _PyFloat_Repr(PyFloat_AS_DOUBLE(v), + buf, sizeof(buf)); w_byte(TYPE_FLOAT, p); w_byte((int)n, p); w_string(buf, (int)n, p); @@ -209,28 +209,14 @@ } else { char buf[256]; /* Plenty to format any double */ - PyFloatObject *temp; 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 = _PyFloat_Repr(PyComplex_RealAsDouble(v), + buf, sizeof(buf)); n = strlen(buf); w_byte((int)n, 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); + n = _PyFloat_Repr(PyComplex_ImagAsDouble(v), + buf, sizeof(buf)); w_byte((int)n, p); w_string(buf, (int)n, p); }
