From fcc6611de9054327441786e52444b5f8eecdd525 Mon Sep 17 00:00:00 2001 From: Nikita Popov Date: Sat, 16 Feb 2013 19:13:36 +0100 Subject: Add support for non-scalar Iterator keys in foreach RFC: https://wiki.php.net/rfc/foreach-non-scalar-keys --- ext/intl/breakiterator/breakiterator_iterators.cpp | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) (limited to 'ext/intl/breakiterator/breakiterator_iterators.cpp') diff --git a/ext/intl/breakiterator/breakiterator_iterators.cpp b/ext/intl/breakiterator/breakiterator_iterators.cpp index d88ad8a712..3748991aed 100644 --- a/ext/intl/breakiterator/breakiterator_iterators.cpp +++ b/ext/intl/breakiterator/breakiterator_iterators.cpp @@ -139,14 +139,10 @@ static void _breakiterator_parts_destroy_it(zend_object_iterator *iter TSRMLS_DC zval_ptr_dtor(reinterpret_cast(&iter->data)); } -static int _breakiterator_parts_get_current_key(zend_object_iterator *iter, - char **str_key, - uint *str_key_len, - ulong *int_key TSRMLS_DC) +static void _breakiterator_parts_get_current_key(zend_object_iterator *iter, zval *key TSRMLS_DC) { /* the actual work is done in move_forward and rewind */ - *int_key = iter->index; - return HASH_KEY_IS_LONG; + ZVAL_LONG(key, iter->index); } static void _breakiterator_parts_move_forward(zend_object_iterator *iter TSRMLS_DC) @@ -343,4 +339,4 @@ U_CFUNC void breakiterator_register_IntlPartsIterator_class(TSRMLS_D) PARTSITER_DECL_LONG_CONST(KEY_RIGHT); #undef PARTSITER_DECL_LONG_CONST -} \ No newline at end of file +} -- cgit v1.2.1