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