summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/pdo_pgsql/pgsql_driver.c2
-rw-r--r--ext/pdo_pgsql/pgsql_statement.c4
2 files changed, 5 insertions, 1 deletions
diff --git a/ext/pdo_pgsql/pgsql_driver.c b/ext/pdo_pgsql/pgsql_driver.c
index 67042c5e05..65fb948675 100644
--- a/ext/pdo_pgsql/pgsql_driver.c
+++ b/ext/pdo_pgsql/pgsql_driver.c
@@ -248,7 +248,7 @@ static int pgsql_handle_preparer(pdo_dbh_t *dbh, const char *sql, long sql_len,
/* that's all for now; we'll defer the actual prepare until the first execute call */
if (nsql) {
- S->query = estrdup(nsql);
+ S->query = nsql;
} else {
S->query = estrdup(sql);
}
diff --git a/ext/pdo_pgsql/pgsql_statement.c b/ext/pdo_pgsql/pgsql_statement.c
index 4e771ea5a4..aaf3664b6b 100644
--- a/ext/pdo_pgsql/pgsql_statement.c
+++ b/ext/pdo_pgsql/pgsql_statement.c
@@ -76,6 +76,10 @@ static int pgsql_stmt_dtor(pdo_stmt_t *stmt TSRMLS_DC)
efree(S->param_formats);
S->param_formats = NULL;
}
+ if (S->param_types) {
+ efree(S->param_types);
+ S->param_types = NULL;
+ }
if (S->query) {
efree(S->query);
S->query = NULL;