summaryrefslogtreecommitdiff
path: root/ext/mysql/php_mysql.c
diff options
context:
space:
mode:
authorAndrey Hristov <andrey@php.net>2008-07-15 13:11:09 +0000
committerAndrey Hristov <andrey@php.net>2008-07-15 13:11:09 +0000
commit136a55fcd92f537f9e6dfcf5003930fe55a328ab (patch)
tree08f09ae33b4cb62a535a3d773796620cdcd77b93 /ext/mysql/php_mysql.c
parent0adb8c0b10c6599ebe90441f8f6965761c234374 (diff)
downloadphp-git-136a55fcd92f537f9e6dfcf5003930fe55a328ab.tar.gz
Sync with bzr
Diffstat (limited to 'ext/mysql/php_mysql.c')
-rw-r--r--ext/mysql/php_mysql.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/ext/mysql/php_mysql.c b/ext/mysql/php_mysql.c
index c441d4def6..f38aff2957 100644
--- a/ext/mysql/php_mysql.c
+++ b/ext/mysql/php_mysql.c
@@ -687,6 +687,8 @@ static void php_mysql_do_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent)
client_flags ^= CLIENT_LOCAL_FILES;
}
+ client_flags &= ~CLIENT_MULTI_STATEMENTS; /* don't allow multi_queries via connect parameter */
+
hashed_details_length = spprintf(&hashed_details, 0, "mysql_%s_%s_%s_%ld", SAFE_STRING(host_and_port), SAFE_STRING(user), SAFE_STRING(passwd), client_flags);
}
@@ -738,7 +740,7 @@ static void php_mysql_do_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent)
/* create the link */
mysql = (php_mysql_conn *) malloc(sizeof(php_mysql_conn));
mysql->active_result_id = 0;
- mysql->multi_query = 1;
+ mysql->multi_query = client_flags & CLIENT_MULTI_STATEMENTS? 1:0;
#ifndef MYSQL_USE_MYSQLND
mysql->conn = mysql_init(NULL);
#else
@@ -786,7 +788,7 @@ static void php_mysql_do_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent)
}
mysql = (php_mysql_conn *) le->ptr;
mysql->active_result_id = 0;
- mysql->multi_query = 1;
+ mysql->multi_query = client_flags & CLIENT_MULTI_STATEMENTS? 1:0;
/* ensure that the link did not die */
if (mysql_ping(mysql->conn)) {
if (mysql_errno(mysql->conn) == 2006) {