diff options
author | Zeev Suraski <zeev@php.net> | 2000-11-03 02:46:49 +0000 |
---|---|---|
committer | Zeev Suraski <zeev@php.net> | 2000-11-03 02:46:49 +0000 |
commit | 6d0749a95ba4a18a4c9dcb85c2f1a86f2218f0f0 (patch) | |
tree | de589bcfd8ab67e9e5f1fd7ebf57fa3cb17fa8ac /ext/sybase_ct/php_sybase_ct.c | |
parent | 313a459af3a029e95b5988ba9de998de3dff3859 (diff) | |
download | php-git-6d0749a95ba4a18a4c9dcb85c2f1a86f2218f0f0.tar.gz |
Fix msql_close(), pg_close() and sybase_close() (Sybase CT)
Diffstat (limited to 'ext/sybase_ct/php_sybase_ct.c')
-rw-r--r-- | ext/sybase_ct/php_sybase_ct.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/ext/sybase_ct/php_sybase_ct.c b/ext/sybase_ct/php_sybase_ct.c index f0c95ba7c5..d93a980457 100644 --- a/ext/sybase_ct/php_sybase_ct.c +++ b/ext/sybase_ct/php_sybase_ct.c @@ -687,10 +687,14 @@ PHP_FUNCTION(sybase_close) ZEND_FETCH_RESOURCE2(sybase_ptr, sybase_link *, &sybase_link_index, id, "Sybase-Link", le_link, le_plink); - if (sybase_link_index) { - zend_list_delete(sybase_link_index->value.lval); - } else { - zend_list_delete(id); + if (id==-1) { /* explicit resource number */ + zend_list_delete(Z_RESVAL_P(sybase_link_index)); + } + + if (id!=-1 + || (sybase_link_index && Z_RESVAL_P(sybase_link_index)==SybCtG(default_link))) { + zend_list_delete(SybCtG(default_link)); + SybCtG(default_link) = -1; } RETURN_TRUE; |