diff --git a/Objects/object.c b/Objects/object.c
index 3a6db18..eba061b 100644
--- a/Objects/object.c
+++ b/Objects/object.c
@@ -797,8 +797,12 @@
 	}
 	if (tp->tp_getattro != NULL)
 		return (*tp->tp_getattro)(v, name);
-	if (tp->tp_getattr != NULL)
-		return (*tp->tp_getattr)(v, _PyUnicode_AsString(name));
+	if (tp->tp_getattr != NULL) {
+		char *name_str = _PyUnicode_AsString(name);
+		if (name_str == NULL)
+			return NULL;
+		return (*tp->tp_getattr)(v, name_str);
+	}
 	PyErr_Format(PyExc_AttributeError,
 		     "'%.50s' object has no attribute '%U'",
 		     tp->tp_name, name);
@@ -838,7 +842,10 @@
 		return err;
 	}
 	if (tp->tp_setattr != NULL) {
-		err = (*tp->tp_setattr)(v, _PyUnicode_AsString(name), value);
+		char *name_str = _PyUnicode_AsString(name);
+		if (name_str == NULL)
+			return -1;
+		err = (*tp->tp_setattr)(v, name_str, value);
 		Py_DECREF(name);
 		return err;
 	}
@@ -1017,8 +1024,8 @@
 	}
 
 	PyErr_Format(PyExc_AttributeError,
-		     "'%.50s' object has no attribute '%.400s'",
-		     tp->tp_name, _PyUnicode_AsString(name));
+		     "'%.50s' object has no attribute '%U'",
+		     tp->tp_name, name);
   done:
 	Py_DECREF(name);
 	return res;
