summaryrefslogtreecommitdiff
path: root/MySQLdb/_mysql.c
diff options
context:
space:
mode:
Diffstat (limited to 'MySQLdb/_mysql.c')
-rw-r--r--MySQLdb/_mysql.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/MySQLdb/_mysql.c b/MySQLdb/_mysql.c
index b222663..b721a66 100644
--- a/MySQLdb/_mysql.c
+++ b/MySQLdb/_mysql.c
@@ -471,13 +471,17 @@ _mysql_ResultObject_Initialize(
return -1;
}
if (PyTuple_Check(t) && PyTuple_GET_SIZE(t) == 2) {
- long mask;
+ long mask, flags;
PyObject *pmask=NULL;
pmask = PyTuple_GET_ITEM(t, 0);
fun2 = PyTuple_GET_ITEM(t, 1);
if (PyInt_Check(pmask)) {
mask = PyInt_AS_LONG(pmask);
- if (mask & fields[i].flags) {
+ flags = fields[i].flags;
+ if (fields[i].charsetnr != 63) { /* maaagic */
+ flags &= ~BINARY_FLAG;
+ }
+ if (mask & flags) {
Py_DECREF(t);
break;
}