diff --git a/Python/bltinmodule.c b/Python/bltinmodule.c
index 22a57ea..284910d 100644
--- a/Python/bltinmodule.c
+++ b/Python/bltinmodule.c
@@ -403,18 +403,16 @@
 	char *str;
 	Py_ssize_t size;
 
-	if (!PyObject_CheckReadBuffer(cmd) &&
-	    !PyUnicode_Check(cmd)) {
-		PyErr_SetString(PyExc_TypeError,
-			   "eval()/exec() arg 1 must be a string, bytes or code object");
-		return NULL;
-	}
-
 	if (PyUnicode_Check(cmd)) {
 		cmd = _PyUnicode_AsDefaultEncodedString(cmd, NULL);
 		if (cmd == NULL)
 			return NULL;
 	}
+	else if (!PyObject_CheckReadBuffer(cmd)) {
+		PyErr_SetString(PyExc_TypeError,
+		  "eval()/exec() arg 1 must be a string, bytes or code object");
+		return NULL;
+	}
 	if (PyObject_AsReadBuffer(cmd, (const void **)&str, &size) < 0) {
 		return NULL;
 	}
diff --git a/Python/import.c b/Python/import.c
index 8195bad..2ef6aec 100644
--- a/Python/import.c
+++ b/Python/import.c
@@ -1247,8 +1247,15 @@
 		Py_ssize_t size;
 		if (!v)
 			return NULL;
-		if (PyObject_AsCharBuffer(v, &base, &size) < 0)
-			return NULL;
+		if (PyUnicode_Check(v)) {
+			v = _PyUnicode_AsDefaultEncodedString(v, NULL);
+			if (v == NULL)
+				return NULL;
+		}
+		if (!PyString_Check(v))
+			continue;
+		base = PyString_AS_STRING(v);
+		size = PyString_GET_SIZE(v);
 		len = size;
 		if (len + 2 + namelen + MAXSUFFIXSIZE >= buflen) {
 			continue; /* Too long */
