diff options
| -rw-r--r-- | ext/mysqli/mysqli_nonapi.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/ext/mysqli/mysqli_nonapi.c b/ext/mysqli/mysqli_nonapi.c index d6c474b7f3..2f272935b3 100644 --- a/ext/mysqli/mysqli_nonapi.c +++ b/ext/mysqli/mysqli_nonapi.c @@ -162,6 +162,12 @@ void mysqli_common_connect(INTERNAL_FUNCTION_PARAMETERS, zend_bool is_real_conne do { if (zend_ptr_stack_num_elements(&plist->free_links)) { + /* If we have an initialized (but unconnected) mysql resource, + * close it before we reuse an existing persistent resource. */ + if (mysql->mysql) { + mysqli_close(mysql->mysql, MYSQLI_CLOSE_IMPLICIT); + } + mysql->mysql = zend_ptr_stack_pop(&plist->free_links); MyG(num_inactive_persistent)--; |
