@@ -313,19 +313,17 @@ static PyObject *
313313class_repr (PyClassObject * op )
314314{
315315 PyObject * mod = PyDict_GetItemString (op -> cl_dict , "__module__" );
316- char buf [140 ];
317316 char * name ;
318317 if (op -> cl_name == NULL || !PyString_Check (op -> cl_name ))
319318 name = "?" ;
320319 else
321320 name = PyString_AsString (op -> cl_name );
322321 if (mod == NULL || !PyString_Check (mod ))
323- sprintf ( buf , "<class ?.%.100s at %p>" , name , op );
322+ return PyString_FromFormat ( "<class ?.s at %p>" , name , op );
324323 else
325- sprintf (buf , "<class %.50s.%.50s at %p>" ,
326- PyString_AsString (mod ),
327- name , op );
328- return PyString_FromString (buf );
324+ return PyString_FromFormat ("<class %s.%s at %p>" ,
325+ PyString_AsString (mod ),
326+ name , op );
329327}
330328
331329static PyObject *
@@ -776,7 +774,6 @@ instance_repr(PyInstanceObject *inst)
776774 reprstr = PyString_InternFromString ("__repr__" );
777775 func = instance_getattr (inst , reprstr );
778776 if (func == NULL ) {
779- char buf [140 ];
780777 PyObject * classname = inst -> in_class -> cl_name ;
781778 PyObject * mod = PyDict_GetItemString (
782779 inst -> in_class -> cl_dict , "__module__" );
@@ -787,13 +784,12 @@ instance_repr(PyInstanceObject *inst)
787784 cname = "?" ;
788785 PyErr_Clear ();
789786 if (mod == NULL || !PyString_Check (mod ))
790- sprintf ( buf , "<?.%.100s instance at %p>" ,
791- cname , inst );
787+ return PyString_FromFormat ( "<?.%s instance at %p>" ,
788+ cname , inst );
792789 else
793- sprintf (buf , "<%.50s.%.50s instance at %p>" ,
794- PyString_AsString (mod ),
795- cname , inst );
796- return PyString_FromString (buf );
790+ return PyString_FromFormat ("<%s.%s instance at %p>" ,
791+ PyString_AsString (mod ),
792+ cname , inst );
797793 }
798794 res = PyEval_CallObject (func , (PyObject * )NULL );
799795 Py_DECREF (func );
@@ -2042,7 +2038,6 @@ instancemethod_compare(PyMethodObject *a, PyMethodObject *b)
20422038static PyObject *
20432039instancemethod_repr (PyMethodObject * a )
20442040{
2045- char buffer [240 ];
20462041 PyObject * self = a -> im_self ;
20472042 PyObject * func = a -> im_func ;
20482043 PyObject * klass = a -> im_class ;
@@ -2072,8 +2067,8 @@ instancemethod_repr(PyMethodObject *a)
20722067 sklassname = PyString_AS_STRING (klassname );
20732068 }
20742069 if (self == NULL )
2075- sprintf ( buffer , "<unbound method %.100s.%.100s >" ,
2076- sklassname , sfuncname );
2070+ result = PyString_FromFormat ( "<unbound method %s.%s >" ,
2071+ sklassname , sfuncname );
20772072 else {
20782073 /* XXX Shouldn't use repr() here! */
20792074 PyObject * selfrepr = PyObject_Repr (self );
@@ -2083,11 +2078,11 @@ instancemethod_repr(PyMethodObject *a)
20832078 Py_DECREF (selfrepr );
20842079 goto fail ;
20852080 }
2086- sprintf (buffer , "<bound method %.60s.%.60s of %.60s>" ,
2087- sklassname , sfuncname , PyString_AS_STRING (selfrepr ));
2081+ result = PyString_FromFormat ("<bound method %s.%s of %s>" ,
2082+ sklassname , sfuncname ,
2083+ PyString_AS_STRING (selfrepr ));
20882084 Py_DECREF (selfrepr );
20892085 }
2090- result = PyString_FromString (buffer );
20912086 fail :
20922087 Py_XDECREF (funcname );
20932088 Py_XDECREF (klassname );
0 commit comments