summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcus Boerger <helly@php.net>2006-01-22 23:48:02 +0000
committerMarcus Boerger <helly@php.net>2006-01-22 23:48:02 +0000
commit7c8de803d00c00ab1840b935ef95e7a89c8d69cb (patch)
tree93df49f98ebc738033cb63bf49db2575a082a6ec
parent86162f7a380b44e5c118114bd9c161434f86ad2c (diff)
downloadphp-git-7c8de803d00c00ab1840b935ef95e7a89c8d69cb.tar.gz
- Fix memory leaks
-rwxr-xr-xext/pdo/pdo_stmt.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/ext/pdo/pdo_stmt.c b/ext/pdo/pdo_stmt.c
index 627cdb478a..568c917730 100755
--- a/ext/pdo/pdo_stmt.c
+++ b/ext/pdo/pdo_stmt.c
@@ -283,7 +283,6 @@ static int really_register_bound_param(struct pdo_bound_param_data *param, pdo_s
param->stmt = stmt;
param->is_param = is_param;
- ZVAL_ADDREF(param->parameter);
if (param->driver_params) {
ZVAL_ADDREF(param->driver_params);
}
@@ -380,6 +379,7 @@ static PHP_METHOD(PDOStatement, execute)
INIT_PZVAL(param.parameter);
if (!really_register_bound_param(&param, stmt, 1 TSRMLS_CC)) {
+ zval_ptr_dtor(&param.parameter);
RETURN_FALSE;
}
@@ -1415,6 +1415,7 @@ static int register_bound_param(INTERNAL_FUNCTION_PARAMETERS, pdo_stmt_t *stmt,
return 0;
}
+ ZVAL_ADDREF(param.parameter);
return really_register_bound_param(&param, stmt, is_param TSRMLS_CC);
} /* }}} */
@@ -1443,6 +1444,7 @@ static PHP_METHOD(PDOStatement, bindValue)
RETURN_FALSE;
}
+ ZVAL_ADDREF(param.parameter);
RETURN_BOOL(really_register_bound_param(&param, stmt, TRUE TSRMLS_CC));
}
/* }}} */