summaryrefslogtreecommitdiff
path: root/ext/pdo
diff options
context:
space:
mode:
authorWez Furlong <wez@php.net>2005-09-10 19:32:15 +0000
committerWez Furlong <wez@php.net>2005-09-10 19:32:15 +0000
commit9c252b4b0765006de6f1023f2c4ae8c6d29c99ad (patch)
tree585b48adb27665173c9fa9b1f8dc0ead9544884d /ext/pdo
parent2d16ed7706bfa8f7f031a4ba8b71d350c307e697 (diff)
downloadphp-git-9c252b4b0765006de6f1023f2c4ae8c6d29c99ad.tar.gz
closes PECL #5027; PDO_FETCH_NAMED not handled via setFetchMode().
Diffstat (limited to 'ext/pdo')
-rwxr-xr-xext/pdo/pdo_stmt.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/ext/pdo/pdo_stmt.c b/ext/pdo/pdo_stmt.c
index 16bb1e6ee4..e746ca10cd 100755
--- a/ext/pdo/pdo_stmt.c
+++ b/ext/pdo/pdo_stmt.c
@@ -1646,6 +1646,7 @@ fail_out:
case PDO_FETCH_BOTH:
case PDO_FETCH_OBJ:
case PDO_FETCH_BOUND:
+ case PDO_FETCH_NAMED:
break;
case PDO_FETCH_COLUMN:
@@ -1713,7 +1714,11 @@ fail_out:
break;
default:
- pdo_raise_impl_error(stmt->dbh, stmt, "22003", "mode is out of range" TSRMLS_CC);
+ if ((mode & ~PDO_FETCH_FLAGS) < PDO_FETCH__MAX && (mode & ~PDO_FETCH_FLAGS) >= 0) {
+ pdo_raise_impl_error(stmt->dbh, stmt, "22003", "unhandled mode; this is a PDO bug, please report it" TSRMLS_CC);
+ } else {
+ pdo_raise_impl_error(stmt->dbh, stmt, "22003", "mode is out of range" TSRMLS_CC);
+ }
return FAILURE;
}