Skip to content

Commit 800c667

Browse files
committed
Fix compilation on MacOS
memrchr has an always available equivalent under the name of zend_memrchr. Signed-off-by: Bob Weinand <[email protected]>
1 parent 9e6eab3 commit 800c667

File tree

4 files changed

+7
-11
lines changed

4 files changed

+7
-11
lines changed

ext/spl/spl_array.c

+3-5
Original file line numberDiff line numberDiff line change
@@ -177,11 +177,7 @@ static zend_object *spl_array_object_new_ex(zend_class_entry *class_type, zend_o
177177
}
178178

179179
while (parent) {
180-
if (parent == spl_ce_ArrayIterator || parent == spl_ce_RecursiveArrayIterator) {
181-
intern->std.handlers = &spl_handler_ArrayIterator;
182-
break;
183-
} else if (parent == spl_ce_ArrayObject) {
184-
intern->std.handlers = &spl_handler_ArrayObject;
180+
if (parent == spl_ce_ArrayIterator || parent == spl_ce_RecursiveArrayIterator || parent == spl_ce_ArrayObject) {
185181
break;
186182
}
187183
parent = parent->parent;
@@ -1781,6 +1777,7 @@ PHP_MINIT_FUNCTION(spl_array)
17811777
{
17821778
spl_ce_ArrayObject = register_class_ArrayObject(zend_ce_aggregate, zend_ce_arrayaccess, zend_ce_serializable, zend_ce_countable);
17831779
spl_ce_ArrayObject->create_object = spl_array_object_new;
1780+
spl_ce_ArrayObject->default_object_handlers = &spl_handler_ArrayObject;
17841781

17851782
memcpy(&spl_handler_ArrayObject, &std_object_handlers, sizeof(zend_object_handlers));
17861783

@@ -1806,6 +1803,7 @@ PHP_MINIT_FUNCTION(spl_array)
18061803

18071804
spl_ce_ArrayIterator = register_class_ArrayIterator(spl_ce_SeekableIterator, zend_ce_arrayaccess, zend_ce_serializable, zend_ce_countable);
18081805
spl_ce_ArrayIterator->create_object = spl_array_object_new;
1806+
spl_ce_ArrayIterator->default_object_handlers = &spl_handler_ArrayIterator;
18091807
spl_ce_ArrayIterator->get_iterator = spl_array_get_iterator;
18101808

18111809
memcpy(&spl_handler_ArrayIterator, &spl_handler_ArrayObject, sizeof(zend_object_handlers));

ext/spl/spl_dllist.c

+1-3
Original file line numberDiff line numberDiff line change
@@ -344,14 +344,11 @@ static zend_object *spl_dllist_object_new_ex(zend_class_entry *class_type, zend_
344344
while (parent) {
345345
if (parent == spl_ce_SplStack) {
346346
intern->flags |= (SPL_DLLIST_IT_FIX | SPL_DLLIST_IT_LIFO);
347-
intern->std.handlers = &spl_handler_SplDoublyLinkedList;
348347
} else if (parent == spl_ce_SplQueue) {
349348
intern->flags |= SPL_DLLIST_IT_FIX;
350-
intern->std.handlers = &spl_handler_SplDoublyLinkedList;
351349
}
352350

353351
if (parent == spl_ce_SplDoublyLinkedList) {
354-
intern->std.handlers = &spl_handler_SplDoublyLinkedList;
355352
break;
356353
}
357354

@@ -1257,6 +1254,7 @@ PHP_MINIT_FUNCTION(spl_dllist) /* {{{ */
12571254
zend_ce_iterator, zend_ce_countable, zend_ce_arrayaccess, zend_ce_serializable
12581255
);
12591256
spl_ce_SplDoublyLinkedList->create_object = spl_dllist_object_new;
1257+
spl_ce_SplDoublyLinkedList->default_object_handlers = &spl_handler_SplDoublyLinkedList;
12601258
spl_ce_SplDoublyLinkedList->get_iterator = spl_dllist_get_iterator;
12611259

12621260
memcpy(&spl_handler_SplDoublyLinkedList, &std_object_handlers, sizeof(zend_object_handlers));

ext/spl/spl_fixedarray.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -282,7 +282,6 @@ static zend_object *spl_fixedarray_object_new_ex(zend_class_entry *class_type, z
282282

283283
while (parent) {
284284
if (parent == spl_ce_SplFixedArray) {
285-
intern->std.handlers = &spl_handler_SplFixedArray;
286285
break;
287286
}
288287

@@ -959,6 +958,7 @@ PHP_MINIT_FUNCTION(spl_fixedarray)
959958
spl_ce_SplFixedArray = register_class_SplFixedArray(
960959
zend_ce_aggregate, zend_ce_arrayaccess, zend_ce_countable, php_json_serializable_ce);
961960
spl_ce_SplFixedArray->create_object = spl_fixedarray_new;
961+
spl_ce_SplFixedArray->default_object_handlers = &spl_handler_SplFixedArray;
962962
spl_ce_SplFixedArray->get_iterator = spl_fixedarray_get_iterator;
963963

964964
memcpy(&spl_handler_SplFixedArray, &std_object_handlers, sizeof(zend_object_handlers));

ext/spl/spl_heap.c

+2-2
Original file line numberDiff line numberDiff line change
@@ -428,7 +428,6 @@ static zend_object *spl_heap_object_new_ex(zend_class_entry *class_type, zend_ob
428428
while (parent) {
429429
if (parent == spl_ce_SplPriorityQueue) {
430430
intern->heap = spl_ptr_heap_init(spl_ptr_pqueue_elem_cmp, spl_ptr_heap_pqueue_elem_ctor, spl_ptr_heap_pqueue_elem_dtor, sizeof(spl_pqueue_elem));
431-
intern->std.handlers = &spl_handler_SplPriorityQueue;
432431
intern->flags = SPL_PQUEUE_EXTR_DATA;
433432
break;
434433
}
@@ -438,7 +437,6 @@ static zend_object *spl_heap_object_new_ex(zend_class_entry *class_type, zend_ob
438437
intern->heap = spl_ptr_heap_init(
439438
parent == spl_ce_SplMinHeap ? spl_ptr_heap_zval_min_cmp : spl_ptr_heap_zval_max_cmp,
440439
spl_ptr_heap_zval_ctor, spl_ptr_heap_zval_dtor, sizeof(zval));
441-
intern->std.handlers = &spl_handler_SplHeap;
442440
break;
443441
}
444442

@@ -1129,6 +1127,7 @@ PHP_MINIT_FUNCTION(spl_heap) /* {{{ */
11291127
{
11301128
spl_ce_SplHeap = register_class_SplHeap(zend_ce_iterator, zend_ce_countable);
11311129
spl_ce_SplHeap->create_object = spl_heap_object_new;
1130+
spl_ce_SplHeap->default_object_handlers = &spl_handler_SplHeap;
11321131
spl_ce_SplHeap->get_iterator = spl_heap_get_iterator;
11331132

11341133
memcpy(&spl_handler_SplHeap, &std_object_handlers, sizeof(zend_object_handlers));
@@ -1149,6 +1148,7 @@ PHP_MINIT_FUNCTION(spl_heap) /* {{{ */
11491148

11501149
spl_ce_SplPriorityQueue = register_class_SplPriorityQueue(zend_ce_iterator, zend_ce_countable);
11511150
spl_ce_SplPriorityQueue->create_object = spl_heap_object_new;
1151+
spl_ce_SplPriorityQueue->default_object_handlers = &spl_handler_SplPriorityQueue;
11521152
spl_ce_SplPriorityQueue->get_iterator = spl_pqueue_get_iterator;
11531153

11541154
memcpy(&spl_handler_SplPriorityQueue, &std_object_handlers, sizeof(zend_object_handlers));

0 commit comments

Comments
 (0)