diff options
Diffstat (limited to 'source/d/perl/DBD-mysql.net_buffer_length.diff')
-rw-r--r-- | source/d/perl/DBD-mysql.net_buffer_length.diff | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/source/d/perl/DBD-mysql.net_buffer_length.diff b/source/d/perl/DBD-mysql.net_buffer_length.diff new file mode 100644 index 000000000..cb88a951e --- /dev/null +++ b/source/d/perl/DBD-mysql.net_buffer_length.diff @@ -0,0 +1,35 @@ +From 0f0cebe87fab335873fd3701bc304922da826940 Mon Sep 17 00:00:00 2001 +From: Michiel Beijen <michiel.beijen@gmail.com> +Date: Fri, 23 Feb 2018 07:52:33 +0000 +Subject: [PATCH] Use net_buffer_length macro if available + +--- + mysql.xs | 11 +++++------ + 1 file changed, 5 insertions(+), 6 deletions(-) + +diff --git a/mysql.xs b/mysql.xs +index 3a9373d..0f97645 100644 +--- a/mysql.xs ++++ b/mysql.xs +@@ -840,15 +840,14 @@ dbd_mysql_get_info(dbh, sql_info_type) + retsv = newSVpvn("`", 1); + break; + case SQL_MAXIMUM_STATEMENT_LENGTH: +-#if !defined(MARIADB_BASE_VERSION) && MYSQL_VERSION_ID >= 50709 +- /* MariaDB 10 is not MySQL source level compatible so this +- only applies to MySQL*/ +- /* mysql_get_option() was added in mysql 5.7.3 */ +- /* MYSQL_OPT_NET_BUFFER_LENGTH was added in mysql 5.7.9 */ ++ /* net_buffer_length macro is not defined in MySQL 5.7 and some MariaDB ++ versions - if it is not available, use newer mysql_get_option */ ++#if !defined(net_buffer_length) ++ ; ++ unsigned long buffer_len; + mysql_get_option(NULL, MYSQL_OPT_NET_BUFFER_LENGTH, &buffer_len); + retsv = newSViv(buffer_len); + #else +- /* before mysql 5.7.9 use net_buffer_length macro */ + retsv = newSViv(net_buffer_length); + #endif + break; + |