summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Zend/zend_llist.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/Zend/zend_llist.c b/Zend/zend_llist.c
index 26baf4d958..4656420781 100644
--- a/Zend/zend_llist.c
+++ b/Zend/zend_llist.c
@@ -91,13 +91,15 @@ ZEND_API void zend_llist_prepend_element(zend_llist *l, void *element)
ZEND_API void zend_llist_del_element(zend_llist *l, void *element, int (*compare)(void *element1, void *element2))
{
zend_llist_element *current=l->head;
+ zend_llist_element *next;
while (current) {
+ next = current->next;
if (compare(current->data, element)) {
DEL_LLIST_ELEMENT(current, l);
break;
}
- current = current->next;
+ current = next;
}
}