diff --git a/Objects/intobject.c b/Objects/intobject.c
index ab64f79..ad60a49 100644
--- a/Objects/intobject.c
+++ b/Objects/intobject.c
@@ -920,27 +920,23 @@
 static PyObject *
 int_oct(PyIntObject *v)
 {
-	char buf[100];
 	long x = v -> ob_ival;
 	if (x < 0)
-		PyOS_snprintf(buf, sizeof(buf), "-0%lo", -x);
+		return PyUnicode_FromFormat("-0%lo", -x);
 	else if (x == 0)
-		strcpy(buf, "0");
+		return PyUnicode_FromString("0");
 	else
-		PyOS_snprintf(buf, sizeof(buf), "0%lo", x);
-	return PyString_FromString(buf);
+		return PyUnicode_FromFormat("0%lo", x);
 }
 
 static PyObject *
 int_hex(PyIntObject *v)
 {
-	char buf[100];
 	long x = v -> ob_ival;
 	if (x < 0)
-		PyOS_snprintf(buf, sizeof(buf), "-0x%lx", -x);
+		return PyUnicode_FromFormat("-0x%lx", -x);
 	else
-		PyOS_snprintf(buf, sizeof(buf), "0x%lx", x);
-	return PyString_FromString(buf);
+		return PyUnicode_FromFormat("0x%lx", x);
 }
 
 static PyObject *
