summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/mysqlnd/mysqlnd_ps.c2
-rw-r--r--ext/mysqlnd/mysqlnd_wireprotocol.c12
2 files changed, 8 insertions, 6 deletions
diff --git a/ext/mysqlnd/mysqlnd_ps.c b/ext/mysqlnd/mysqlnd_ps.c
index 33b03a0a51..94df285e66 100644
--- a/ext/mysqlnd/mysqlnd_ps.c
+++ b/ext/mysqlnd/mysqlnd_ps.c
@@ -513,6 +513,8 @@ MYSQLND_METHOD(mysqlnd_stmt, execute)(MYSQLND_STMT * const stmt TSRMLS_DC)
}
stmt->execute_count++;
+ CONN_SET_STATE(conn, CONN_QUERY_SENT);
+
ret = mysqlnd_query_read_result_set_header(stmt->conn, stmt TSRMLS_CC);
if (ret == FAIL) {
stmt->error_info = conn->error_info;
diff --git a/ext/mysqlnd/mysqlnd_wireprotocol.c b/ext/mysqlnd/mysqlnd_wireprotocol.c
index 40c6d74442..c030d711f9 100644
--- a/ext/mysqlnd/mysqlnd_wireprotocol.c
+++ b/ext/mysqlnd/mysqlnd_wireprotocol.c
@@ -733,7 +733,7 @@ static
void php_mysqlnd_auth_free_mem(void *_packet, zend_bool alloca TSRMLS_DC)
{
if (!alloca) {
- mnd_efree((php_mysql_packet_auth *) _packet);
+ mnd_pefree((php_mysql_packet_auth *) _packet, ((php_mysql_packet_auth *)_packet)->header.persistent);
}
}
/* }}} */
@@ -807,7 +807,7 @@ void php_mysqlnd_ok_free_mem(void *_packet, zend_bool alloca TSRMLS_DC)
p->message = NULL;
}
if (!alloca) {
- mnd_efree(p);
+ mnd_pefree(p, p->header.persistent);
}
}
/* }}} */
@@ -877,7 +877,7 @@ static
void php_mysqlnd_eof_free_mem(void *_packet, zend_bool alloca TSRMLS_DC)
{
if (!alloca) {
- mnd_efree(_packet);
+ mnd_pefree(_packet, ((php_mysql_packet_eof *)_packet)->header.persistent);
}
}
/* }}} */
@@ -949,7 +949,7 @@ static
void php_mysqlnd_cmd_free_mem(void *_packet, zend_bool alloca TSRMLS_DC)
{
if (!alloca) {
- mnd_efree((php_mysql_packet_command *) _packet);
+ mnd_pefree(_packet, ((php_mysql_packet_command *)_packet)->header.persistent);
}
}
/* }}} */
@@ -1036,7 +1036,7 @@ void php_mysqlnd_rset_header_free_mem(void *_packet, zend_bool alloca TSRMLS_DC)
p->info_or_local_file = NULL;
}
if (!alloca) {
- mnd_efree(p);
+ mnd_pefree(p, p->header.persistent);
}
}
/* }}} */
@@ -1227,7 +1227,7 @@ void php_mysqlnd_rset_field_free_mem(void *_packet, zend_bool alloca TSRMLS_DC)
/* p->metadata was passed to us as temporal buffer */
if (!alloca) {
- mnd_efree(p);
+ mnd_pefree(p, p->header.persistent);
}
}
/* }}} */