summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIlia Alshanetsky <iliaa@php.net>2005-07-07 15:14:10 +0000
committerIlia Alshanetsky <iliaa@php.net>2005-07-07 15:14:10 +0000
commit86028ad122a49adfa830bc3675746c83d55d8753 (patch)
tree909bc536fde64c87e9e43bf9c4b3cfdcf9bb3f9d
parent703c55577bae3669f9bcb88484da1ea55ed7eaf8 (diff)
downloadphp-git-86028ad122a49adfa830bc3675746c83d55d8753.tar.gz
Return an empty array rather then FALSE in fetchAll() on no results.
-rwxr-xr-xext/pdo/pdo_stmt.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/ext/pdo/pdo_stmt.c b/ext/pdo/pdo_stmt.c
index 1718dba8f6..b365c96a77 100755
--- a/ext/pdo/pdo_stmt.c
+++ b/ext/pdo/pdo_stmt.c
@@ -1293,8 +1293,7 @@ static PHP_METHOD(PDOStatement, fetchAll)
}
if (!do_fetch(stmt, TRUE, data, how, PDO_FETCH_ORI_NEXT, 0, return_all TSRMLS_CC)) {
FREE_ZVAL(data);
- zval_dtor(return_value);
- error = 1;
+ error = 2;
}
}
if (!error) {
@@ -1320,7 +1319,12 @@ static PHP_METHOD(PDOStatement, fetchAll)
if (error) {
PDO_HANDLE_STMT_ERR();
- RETURN_FALSE;
+ if (error != 2) {
+ RETURN_FALSE;
+ } else { /* on no results, return an empty array */
+ array_init(return_value);
+ return;
+ }
}
}
/* }}} */