summaryrefslogtreecommitdiff
path: root/ext/pdo_pgsql/pgsql_statement.c
diff options
context:
space:
mode:
authorIlia Alshanetsky <iliaa@php.net>2007-11-20 23:12:30 +0000
committerIlia Alshanetsky <iliaa@php.net>2007-11-20 23:12:30 +0000
commitfdc2dab50be0e70ad07f7f0536a91d4119f8f639 (patch)
tree9c9181f888aef4c92f18c40e68b59216fc3b7d32 /ext/pdo_pgsql/pgsql_statement.c
parenta4bc590ec1a4a86599e413d1d4d93fff0671d578 (diff)
downloadphp-git-fdc2dab50be0e70ad07f7f0536a91d4119f8f639.tar.gz
MFB: Adjusted fix for bug #42978
Diffstat (limited to 'ext/pdo_pgsql/pgsql_statement.c')
-rw-r--r--ext/pdo_pgsql/pgsql_statement.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/ext/pdo_pgsql/pgsql_statement.c b/ext/pdo_pgsql/pgsql_statement.c
index 0a84bd3258..b640974d44 100644
--- a/ext/pdo_pgsql/pgsql_statement.c
+++ b/ext/pdo_pgsql/pgsql_statement.c
@@ -265,6 +265,11 @@ static int pgsql_stmt_param_hook(pdo_stmt_t *stmt, struct pdo_bound_param_data *
sizeof(Oid));
}
if (param->paramno >= 0) {
+ if (param->paramno > zend_hash_num_elements(stmt->bound_param_map)) {
+ pdo_pgsql_error_stmt(stmt, PGRES_FATAL_ERROR, "HY105");
+ return 0;
+ }
+
if (PDO_PARAM_TYPE(param->param_type) == PDO_PARAM_LOB &&
Z_TYPE_P(param->parameter) == IS_RESOURCE) {
php_stream *stm;