From c754b2508023e19d6aba17cd8b9eaf0370cdff92 Mon Sep 17 00:00:00 2001 From: INADA Naoki Date: Thu, 6 Dec 2018 02:39:25 +0900 Subject: [PATCH] Support field name other than UTF-8 (#301) --- MySQLdb/_mysql.c | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) 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