diff --git a/src/MongoDB/Cursor.c b/src/MongoDB/Cursor.c index 78ccfb7bd..354ec3b06 100644 --- a/src/MongoDB/Cursor.c +++ b/src/MongoDB/Cursor.c @@ -311,7 +311,9 @@ PHP_METHOD(Cursor, current) data = php_phongo_cursor_get_current_data(intern); - if (data) { + if (Z_ISUNDEF_P(data)) { + RETURN_NULL(); + } else { ZVAL_COPY_DEREF(return_value, data); } } diff --git a/tests/cursor/bug1713-001.phpt b/tests/cursor/bug1713-001.phpt new file mode 100644 index 000000000..38f1882cf --- /dev/null +++ b/tests/cursor/bug1713-001.phpt @@ -0,0 +1,23 @@ +--TEST-- +PHPC-1713: MongoDB\Driver\Cursor::current() does not return anything +--SKIPIF-- + + +--FILE-- +executeQuery(NS, new MongoDB\Driver\Query([])); + +var_dump($cursor->valid()); +var_dump($cursor->current()); + +?> +===DONE=== + +--EXPECTF-- +bool(false) +NULL +===DONE===