1From 45436592aa64308b2ab46f84c6107c6d7de0a3ec Mon Sep 17 00:00:00 2001
2From: Mingli Yu <mingli.yu@windriver.com>
3Date: Wed, 6 Mar 2019 00:16:17 -0800
4Subject: [PATCH] _mysql.c: fix compilation with MariaDB 10.3.13
5
6Use standard API function MYSQL_OPT_RECONNECT
7instead of direct modification of internal structures
8which does not work for MariaDB.
9
10Upstream-Status: Pending
11
12Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
13---
14 _mysql.c | 9 ++++++++-
15 1 file changed, 8 insertions(+), 1 deletion(-)
16
17--- a/_mysql.c
18+++ b/_mysql.c
19@@ -2002,7 +2002,14 @@ _mysql_ConnectionObject_ping(
20 	int r, reconnect = -1;
21 	if (!PyArg_ParseTuple(args, "|I", &reconnect)) return NULL;
22 	check_connection(self);
23-	if ( reconnect != -1 ) self->connection.reconnect = reconnect;
24+	if ( reconnect != -1 ) {
25+#if MYSQL_VERSION_ID >= 50013
26+		my_bool recon = reconnect;
27+		mysql_options(&self->connection, MYSQL_OPT_RECONNECT, &recon);
28+#else
29+		self->connection.reconnect = reconnect;
30+#endif
31+        }
32 	Py_BEGIN_ALLOW_THREADS
33 	r = mysql_ping(&(self->connection));
34 	Py_END_ALLOW_THREADS
35