fix PECL bug #5571 (oci_new_connect() not closed by oci_close())
authorAntony Dovgal <tony2001@php.net>
Mon, 3 Oct 2005 13:02:14 +0000 (13:02 +0000)
committerAntony Dovgal <tony2001@php.net>
Mon, 3 Oct 2005 13:02:14 +0000 (13:02 +0000)
ext/oci8/oci8_collection.c
ext/oci8/oci8_lob.c
ext/oci8/oci8_statement.c

index 9080ddd203184cd692e1639ad1133c232684a63c..c17712ae3ad39080a7c5062fe1c5cb72781c7bd2 100644 (file)
@@ -601,7 +601,9 @@ void php_oci_collection_close(php_oci_collection *collection TSRMLS_DC)
                        php_oci_error(connection->err, connection->errcode TSRMLS_CC);
                }
        }
-
+       
+       zend_list_delete(collection->connection->rsrc_id);
+       
        efree(collection);
        return;
 } /* }}} */
index 865a4ef494e7dde6642b2549627b2c7dc71f9272..e1e343e15b5aa567fe1103d158ea82056127cf27 100644 (file)
@@ -470,6 +470,8 @@ void php_oci_lob_free (php_oci_descriptor *descriptor TSRMLS_DC)
        }
 
        PHP_OCI_CALL(OCIDescriptorFree, (descriptor->descriptor, descriptor->type));
+
+       zend_list_delete(descriptor->connection->rsrc_id);
        efree(descriptor);
 } /* }}} */
 
index a2aae2f6ef16a51f40390b08f2aa6a7b790d6d08..6d9eb1240a42bc4045cb3645501a88cbeb511bdb 100644 (file)
@@ -613,7 +613,8 @@ void php_oci_statement_free(php_oci_statement *statement TSRMLS_DC)
                zend_hash_destroy(statement->defines);
                efree(statement->defines);
        }
-
+       
+       zend_list_delete(statement->connection->rsrc_id);
        efree(statement);
 } /* }}} */