diff options
author | Nikita Popov <nikita.ppv@gmail.com> | 2019-03-25 16:43:33 +0100 |
---|---|---|
committer | Nikita Popov <nikita.ppv@gmail.com> | 2019-03-25 16:43:33 +0100 |
commit | 5c26268e7634b55684e175d95e40dc46815cd910 (patch) | |
tree | 7ee7010e6b4b0089e1e700948c13dcfd33d0620c | |
parent | 071ffa2e7946a8f4fca856c9984be512d1eadbbc (diff) | |
parent | 91d4d175ab1a0288f4e37d64a8ec948958ed9528 (diff) | |
download | php-git-5c26268e7634b55684e175d95e40dc46815cd910.tar.gz |
Merge branch 'PHP-7.3' into PHP-7.4
-rw-r--r-- | ext/interbase/interbase.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/ext/interbase/interbase.c b/ext/interbase/interbase.c index 0ffafb2c7a..b69a76f26e 100644 --- a/ext/interbase/interbase.c +++ b/ext/interbase/interbase.c @@ -939,13 +939,15 @@ static void _php_ibase_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent) /* xlink = (zend_resource*) le->ptr; if ((!persistent && xlink->type == le_link) || xlink->type == le_plink) { - if (IBG(default_link)) { - zend_list_close(IBG(default_link)); + if (IBG(default_link) != xlink) { + GC_ADDREF(xlink); + if (IBG(default_link)) { + zend_list_delete(IBG(default_link)); + } + IBG(default_link) = xlink; } GC_ADDREF(xlink); - GC_ADDREF(xlink); - IBG(default_link) = xlink; - RETVAL_RES(xlink); + RETURN_RES(xlink); } else { zend_hash_str_del(&EG(regular_list), hash, sizeof(hash)-1); } |