From c1d46eb50215ee16505f4029272ebbf75bc0d257 Mon Sep 17 00:00:00 2001 From: Andrey Hristov Date: Fri, 29 May 2009 13:09:47 +0000 Subject: [PATCH] MFH:Add support for mysql_stmt_store_result() from libmysql 6.0.8+ and 5.4.x --- ext/mysqli/config.m4 | 10 ++++++++++ ext/mysqli/mysqli_api.c | 2 +- ext/mysqli/mysqli_mysqlnd.h | 2 ++ ext/mysqlnd/mysqlnd_libmysql_compat.h | 2 ++ 4 files changed, 15 insertions(+), 1 deletion(-) diff --git a/ext/mysqli/config.m4 b/ext/mysqli/config.m4 index b0587cb1f8..c69b16a819 100644 --- a/ext/mysqli/config.m4 +++ b/ext/mysqli/config.m4 @@ -61,6 +61,16 @@ elif test "$PHP_MYSQLI" != "no"; then ],[ $MYSQLI_LIBLINE ]) + dnl + dnl Check the library for mysql_stmt_store_result + dnl + PHP_CHECK_LIBRARY($MYSQL_LIB_NAME, mysql_stmt_next_result, + [ + AC_DEFINE(HAVE_STMT_NEXT_RESULT, 1, [ ]) + ],[ + ],[ + $MYSQLI_LIBLINE + ]) fi dnl Build extension diff --git a/ext/mysqli/mysqli_api.c b/ext/mysqli/mysqli_api.c index 5061814b9f..66607a5f11 100644 --- a/ext/mysqli/mysqli_api.c +++ b/ext/mysqli/mysqli_api.c @@ -1484,7 +1484,7 @@ PHP_FUNCTION(mysqli_next_result) { /* }}} */ -#ifdef MYSQLI_USE_MYSQLND +#ifdef HAVE_STMT_NEXT_RESULT /* {{{ proto bool mysqli_stmt_next_result(object link) check if there any more query results from a multi query */ PHP_FUNCTION(mysqli_stmt_more_results) diff --git a/ext/mysqli/mysqli_mysqlnd.h b/ext/mysqli/mysqli_mysqlnd.h index 88aed11b7d..574d956737 100644 --- a/ext/mysqli/mysqli_mysqlnd.h +++ b/ext/mysqli/mysqli_mysqlnd.h @@ -40,4 +40,6 @@ #define mysqli_bg_store_result(r) mysqlnd_bg_store_result((r)) #define mysqli_async_query(c, q, l) mysqlnd_async_query((c), (q), (l)) +#define HAVE_STMT_NEXT_RESULT + #endif diff --git a/ext/mysqlnd/mysqlnd_libmysql_compat.h b/ext/mysqlnd/mysqlnd_libmysql_compat.h index b23d2fd125..a9e15c71ad 100644 --- a/ext/mysqlnd/mysqlnd_libmysql_compat.h +++ b/ext/mysqlnd/mysqlnd_libmysql_compat.h @@ -101,6 +101,8 @@ #define mysql_stmt_attr_set(s,a,v) mysqlnd_stmt_attr_set((s), (a), (v)) #define mysql_stmt_param_metadata(s) mysqlnd_stmt_param_metadata((s)) #define mysql_stmt_result_metadata(s) mysqlnd_stmt_result_metadata((s)) +#define mysql_stmt_next_result(s) mysqlnd_stmt_next_result((s)) +#define mysql_stmt_more_results(s) mysqlnd_stmt_more_results((s)) #define mysql_thread_safe() mysqlnd_thread_safe() #define mysql_info(r) mysqlnd_info((r)) #define mysql_options(r,a,b) mysqlnd_options((r), (a), (b)) -- 2.40.0