diff options
author | Ilia Alshanetsky <iliaa@php.net> | 2003-12-10 01:02:20 +0000 |
---|---|---|
committer | Ilia Alshanetsky <iliaa@php.net> | 2003-12-10 01:02:20 +0000 |
commit | 06b528aa547042f5df45954ad9fea511288e11cd (patch) | |
tree | c1478301dec646fe833fd87ecdc4aa4eb7ba2d16 /ext/sqlite/sqlite.c | |
parent | bfdc1fcac0fa02fdc08eaa20fba96caaed0ca242 (diff) | |
download | php-git-06b528aa547042f5df45954ad9fea511288e11cd.tar.gz |
Fixed a crash in SQLite when fetching data using sqlite_fetch_object() in
a loop.
Diffstat (limited to 'ext/sqlite/sqlite.c')
-rw-r--r-- | ext/sqlite/sqlite.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/ext/sqlite/sqlite.c b/ext/sqlite/sqlite.c index a6bb92c5f8..535455ccab 100644 --- a/ext/sqlite/sqlite.c +++ b/ext/sqlite/sqlite.c @@ -1845,7 +1845,11 @@ PHP_FUNCTION(sqlite_fetch_object) return; } - php_sqlite_fetch_array(res, PHPSQLITE_ASSOC, decode_binary, 1, &dataset TSRMLS_CC); + if (res->curr_row < res->nrows) { + php_sqlite_fetch_array(res, PHPSQLITE_ASSOC, decode_binary, 1, &dataset TSRMLS_CC); + } else { + RETURN_FALSE; + } object_and_properties_init(return_value, ce, NULL); zend_merge_properties(return_value, Z_ARRVAL(dataset), 1 TSRMLS_CC); |