summaryrefslogtreecommitdiff
path: root/Zend/zend_ptr_stack.c
diff options
context:
space:
mode:
Diffstat (limited to 'Zend/zend_ptr_stack.c')
-rw-r--r--Zend/zend_ptr_stack.c15
1 files changed, 11 insertions, 4 deletions
diff --git a/Zend/zend_ptr_stack.c b/Zend/zend_ptr_stack.c
index 97643dc47d..082caed7fb 100644
--- a/Zend/zend_ptr_stack.c
+++ b/Zend/zend_ptr_stack.c
@@ -12,13 +12,11 @@
| obtain it through the world-wide-web, please send a note to |
| license@zend.com so we can mail you a copy immediately. |
+----------------------------------------------------------------------+
- | Authors: Andi Gutmans <andi@zend.com> |
- | Zeev Suraski <zeev@zend.com> |
+ | Authors: Andi Gutmans <andi@php.net> |
+ | Zeev Suraski <zeev@php.net> |
+----------------------------------------------------------------------+
*/
-/* $Id$ */
-
#include "zend.h"
#include "zend_ptr_stack.h"
#ifdef HAVE_STDARG_H
@@ -90,6 +88,15 @@ ZEND_API void zend_ptr_stack_apply(zend_ptr_stack *stack, void (*func)(void *))
}
}
+ZEND_API void zend_ptr_stack_reverse_apply(zend_ptr_stack *stack, void (*func)(void *))
+{
+ int i = 0;
+
+ while (i < stack->top) {
+ func(stack->elements[i++]);
+ }
+}
+
ZEND_API void zend_ptr_stack_clean(zend_ptr_stack *stack, void (*func)(void *), zend_bool free_elements)
{