Fixed memory leak with persistent connections

This commit is contained in:
Ilia Alshanetsky 2006-08-07 17:32:13 +00:00
parent 23a7a275ed
commit 194b309d2d

View file

@ -342,8 +342,10 @@ static PHP_METHOD(PDO, dbh_constructor)
/* switch over to the persistent one */
dbh = pdbh;
zend_object_store_set_object(object, dbh TSRMLS_CC);
if (!call_factory) {
dbh->refcount++;
}
}
if (hashkey) {
efree(hashkey);
@ -1399,6 +1401,10 @@ static void dbh_free(pdo_dbh_t *dbh TSRMLS_DC)
pefree(dbh->password, dbh->is_persistent);
}
if (dbh->persistent_id) {
pefree((char *)dbh->persistent_id, dbh->is_persistent);
}
if (dbh->def_stmt_ctor_args) {
zval_ptr_dtor(&dbh->def_stmt_ctor_args);
}