mirror of https://github.com/python/cpython
Use PyOS_snprintf instead of sprintf.
Just being sure. The old code looks like it was safe, but there's no harm in double-checking.
This commit is contained in:
parent
a30eacf458
commit
05bd787c6c
|
@ -810,21 +810,21 @@ SyntaxError__str__(PyObject *self, PyObject *args)
|
|||
if (have_filename)
|
||||
bufsize += PyString_GET_SIZE(filename);
|
||||
|
||||
buffer = PyMem_Malloc(bufsize);
|
||||
buffer = PyMem_MALLOC(bufsize);
|
||||
if (buffer != NULL) {
|
||||
if (have_filename && have_lineno)
|
||||
sprintf(buffer, "%s (%s, line %ld)",
|
||||
PyString_AS_STRING(str),
|
||||
my_basename(PyString_AS_STRING(filename)),
|
||||
PyInt_AsLong(lineno));
|
||||
PyOS_snprintf(buffer, bufsize, "%s (%s, line %ld)",
|
||||
PyString_AS_STRING(str),
|
||||
my_basename(PyString_AS_STRING(filename)),
|
||||
PyInt_AsLong(lineno));
|
||||
else if (have_filename)
|
||||
sprintf(buffer, "%s (%s)",
|
||||
PyString_AS_STRING(str),
|
||||
my_basename(PyString_AS_STRING(filename)));
|
||||
PyOS_snprintf(buffer, bufsize, "%s (%s)",
|
||||
PyString_AS_STRING(str),
|
||||
my_basename(PyString_AS_STRING(filename)));
|
||||
else if (have_lineno)
|
||||
sprintf(buffer, "%s (line %ld)",
|
||||
PyString_AS_STRING(str),
|
||||
PyInt_AsLong(lineno));
|
||||
PyOS_snprintf(buffer, bufsize, "%s (line %ld)",
|
||||
PyString_AS_STRING(str),
|
||||
PyInt_AsLong(lineno));
|
||||
|
||||
result = PyString_FromString(buffer);
|
||||
PyMem_FREE(buffer);
|
||||
|
|
Loading…
Reference in New Issue