diff options
author | Dmitry Stogov <dmitry@zend.com> | 2017-11-15 00:53:51 +0300 |
---|---|---|
committer | Dmitry Stogov <dmitry@zend.com> | 2017-11-15 00:53:51 +0300 |
commit | 69462bdf4c9dcfef7056be5e075a7545724004b3 (patch) | |
tree | 5a5f5e9790e74887e724a19e5cfd5e87fbb6a97f /ext/mysqli/mysqli_api.c | |
parent | 492bc8ea576a8b088955becaedf6553e21f76393 (diff) | |
download | php-git-69462bdf4c9dcfef7056be5e075a7545724004b3.tar.gz |
Embeded zend_list into st_mysqlnd_error_info, to avoid extra allocation/deallocation.
Diffstat (limited to 'ext/mysqli/mysqli_api.c')
-rw-r--r-- | ext/mysqli/mysqli_api.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/ext/mysqli/mysqli_api.c b/ext/mysqli/mysqli_api.c index 2c9915111d..67ae750e8b 100644 --- a/ext/mysqli/mysqli_api.c +++ b/ext/mysqli/mysqli_api.c @@ -1870,6 +1870,9 @@ PHP_FUNCTION(mysqli_prepare) memcpy(sqlstate, mysql->mysql->net.sqlstate, SQLSTATE_LENGTH+1); #else MYSQLND_ERROR_INFO error_info = *mysql->mysql->data->error_info; + mysql->mysql->data->error_info->error_list.head = NULL; + mysql->mysql->data->error_info->error_list.tail = NULL; + mysql->mysql->data->error_info->error_list.count = 0; #endif mysqli_stmt_close(stmt->stmt, FALSE); stmt->stmt = NULL; @@ -1880,6 +1883,7 @@ PHP_FUNCTION(mysqli_prepare) memcpy(mysql->mysql->net.last_error, last_error, MYSQL_ERRMSG_SIZE); memcpy(mysql->mysql->net.sqlstate, sqlstate, SQLSTATE_LENGTH+1); #else + zend_llist_clean(&mysql->mysql->data->error_info->error_list); *mysql->mysql->data->error_info = error_info; #endif } |