diff --git a/MySQLdb/_mysql.c b/MySQLdb/_mysql.c index 81dc924..b45682d 100644 --- a/MySQLdb/_mysql.c +++ b/MySQLdb/_mysql.c @@ -1037,15 +1037,39 @@ _mysql_ResultObject_describe( { PyObject *d; MYSQL_FIELD *fields; + MY_CHARSET_INFO cs; + int isutf8 = 0; unsigned int i, n; + check_result_connection(self); + + mysql_get_character_set_info(&result_connection(self)->connection, &cs); + if (strncmp("utf8", cs.name, 4) == 0) { // utf8, utf8mb3, utf8mb4 + isutf8 = 1; + } + n = mysql_num_fields(self->result); fields = mysql_fetch_fields(self->result); if (!(d = PyTuple_New(n))) return NULL; for (i=0; i