diff --git a/Modules/xxmodule.c b/Modules/xxmodule.c
index ea66eef..df312eb 100644
--- a/Modules/xxmodule.c
+++ b/Modules/xxmodule.c
@@ -197,6 +197,18 @@
 	return Py_None;
 }
 
+/* Example passing NULLs to PyObject_Str(NULL) and PyObject_Unicode(NULL). */
+
+static PyObject *
+xx_null(PyObject *self, PyObject *noargs)
+{
+	PyObject *o1 = PyObject_Str(NULL), *o2 = PyObject_Unicode(NULL);
+	PyObject *tuple = PyTuple_Pack(2, o1, o2);
+	Py_XDECREF(o1);
+	Py_XDECREF(o2);
+	return tuple;
+}
+
 /* Test bad format character */
 
 static PyObject *
@@ -331,6 +343,8 @@
 		PyDoc_STR("new() -> new Xx object")},
 	{"bug",		xx_bug,		METH_VARARGS,
 		PyDoc_STR("bug(o) -> None")},
+	{"null",	xx_null,	METH_NOARGS,
+		PyDoc_STR("null(o) -> ('NULL', u'NULL')")},
 	{NULL,		NULL}		/* sentinel */
 };
 
diff --git a/Objects/object.c b/Objects/object.c
index c4634f7..9b6a30a 100644
--- a/Objects/object.c
+++ b/Objects/object.c
@@ -400,10 +400,16 @@
 {
 	PyObject *res;
 	PyObject *func;
+	PyObject *str;
 	static PyObject *unicodestr;
 
 	if (v == NULL) {
 		res = PyString_FromString("<NULL>");
+		if (res == NULL)
+			return NULL;
+		str = PyUnicode_FromEncodedObject(res, NULL, "strict");
+		Py_DECREF(res);
+		return str;
 	} else if (PyUnicode_CheckExact(v)) {
 		Py_INCREF(v);
 		return v;
@@ -443,13 +449,9 @@
 	if (res == NULL)
 		return NULL;
 	if (!PyUnicode_Check(res)) {
-		PyObject *str;
 		str = PyUnicode_FromEncodedObject(res, NULL, "strict");
 		Py_DECREF(res);
-		if (str)
-			res = str;
-		else
-			return NULL;
+		res = str;
 	}
 	return res;
 }
