summaryrefslogtreecommitdiff
path: root/ext/pdo_pgsql/pgsql_statement.c
diff options
context:
space:
mode:
authorMarcus Boerger <helly@php.net>2005-03-10 18:48:01 +0000
committerMarcus Boerger <helly@php.net>2005-03-10 18:48:01 +0000
commitcdb042f63272f817ecf372039d64469a99483d7a (patch)
tree785398ddb07ed47993bca5c3130e303578ac5288 /ext/pdo_pgsql/pgsql_statement.c
parent92af2b61945f39e0ba4e4d4ad1d3d01a856c534e (diff)
downloadphp-git-cdb042f63272f817ecf372039d64469a99483d7a.tar.gz
- Fix fetching bound vars & tests
Diffstat (limited to 'ext/pdo_pgsql/pgsql_statement.c')
-rw-r--r--ext/pdo_pgsql/pgsql_statement.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/ext/pdo_pgsql/pgsql_statement.c b/ext/pdo_pgsql/pgsql_statement.c
index 1a6377660c..f1d1c304fa 100644
--- a/ext/pdo_pgsql/pgsql_statement.c
+++ b/ext/pdo_pgsql/pgsql_statement.c
@@ -72,7 +72,6 @@ static int pgsql_stmt_dtor(pdo_stmt_t *stmt TSRMLS_DC)
static int pgsql_stmt_execute(pdo_stmt_t *stmt TSRMLS_DC)
{
- pdo_dbh_t *dbh = stmt->dbh;
pdo_pgsql_stmt *S = (pdo_pgsql_stmt*)stmt->driver_data;
pdo_pgsql_db_handle *H = S->H;
ExecStatusType status;
@@ -84,6 +83,8 @@ static int pgsql_stmt_execute(pdo_stmt_t *stmt TSRMLS_DC)
S->result = NULL;
}
}
+
+ S->current_row = 0;
if (S->cursor_name) {
char *q = NULL;
@@ -127,7 +128,7 @@ static int pgsql_stmt_fetch(pdo_stmt_t *stmt,
pdo_pgsql_stmt *S = (pdo_pgsql_stmt*)stmt->driver_data;
if (S->cursor_name) {
- char *ori_str = NULL;
+ char *ori_str;
char *q = NULL;
ExecStatusType status;
@@ -135,12 +136,11 @@ static int pgsql_stmt_fetch(pdo_stmt_t *stmt,
case PDO_FETCH_ORI_NEXT: ori_str = "NEXT"; break;
case PDO_FETCH_ORI_PRIOR: ori_str = "PRIOR"; break;
case PDO_FETCH_ORI_REL: ori_str = "RELATIVE"; break;
- }
- if (!ori_str) {
- return 0;
+ default:
+ return 0;
}
- spprintf(&q, 0, "FETCH %s %d FROM %s", ori_str, offset, S->cursor_name);
+ spprintf(&q, 0, "FETCH %s %ld FROM %s", ori_str, offset, S->cursor_name);
S->result = PQexec(S->H->server, q);
status = PQresultStatus(S->result);