From: Andrey Hristov Date: Thu, 14 Feb 2008 14:50:21 +0000 (+0000) Subject: Fix memory errors< X-Git-Tag: RELEASE_1_3_1~46 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=7e0be017df9c97ec1451c93e8a174341ab6bad57;p=php Fix memory errors< --- 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); } } /* }}} */