#
a56ff4fe |
| 10-Oct-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix GH-16337: Use-after-free in SplHeap We introduce a new flag to indicate when a heap or priority queue is write-locked. In principle we could've used SPL_HEAP_CORRUPTED too, but t
Fix GH-16337: Use-after-free in SplHeap We introduce a new flag to indicate when a heap or priority queue is write-locked. In principle we could've used SPL_HEAP_CORRUPTED too, but that won't be descriptive to users (and it's a lie too). Closes GH-16346.
show more ...
|
#
0956267c |
| 23-Jul-2024 |
Levi Morrison |
Fix warnings in session/spl This fixes -Winline errors where the functions are not ever inlined. Also fixes some signature mismatches which were fixed previously but for whateve
Fix warnings in session/spl This fixes -Winline errors where the functions are not ever inlined. Also fixes some signature mismatches which were fixed previously but for whatever reason were not ported to all maintained branches: /usr/local/src/php/ext/session/session.c:1299:20: warning:conflicting types for 'php_session_send_cookie' due to enum/integer mismatch; have 'zend_result(void)' {aka 'ZEND_RESULT_CODE(void)'} [-Wenum-int-mismatch] 1299 | static zend_result php_session_send_cookie(void) /* {{{ */ | ^~~~~~~~~~~~~~~~~~~~~~~ /usr/local/src/php/ext/session/session.c:100:12: note: previous declaration of 'php_session_send_cookie' with type 'int(void)' 100 | static int php_session_send_cookie(void); | ^~~~~~~~~~~~~~~~~~~~~~~
show more ...
|
#
d1fc0017 |
| 14-Sep-2022 |
Bob Weinand |
Revert "Fix compilation on MacOS" This reverts commit 800c6672e57a01d68dcaba36f8f7d65c6871aafc. Reverted along with a01dd9fedaecd2e5b95bc5c2e8d6542116addeae. |
#
800c6672 |
| 24-Aug-2022 |
Bob Weinand |
Fix compilation on MacOS memrchr has an always available equivalent under the name of zend_memrchr. Signed-off-by: Bob Weinand <bobwei9@hotmail.com> |
#
b73f139c |
| 02-Aug-2022 |
Máté Kocsis |
Declare ext/spl constants in stubs (#9226) |
#
dfbb4252 |
| 04-Jul-2022 |
David Carlier |
Use `safe_*erealloc*` flavor in few places to mitigate possible overflows. |
#
3b92a966 |
| 25-Jun-2022 |
Ilija Tovilo |
Convert return type of various object handlers from int to zend_result (#8755) |
#
cfc38a60 |
| 13-Apr-2022 |
George Peter Banyard |
SPL: minor refactoring (#8341) Use more appropriate types and return macros |
#
644710ee |
| 24-Sep-2021 |
Nikita Popov |
Remove unused flags from spl_heap_it Which makes it equivalent to just zend_user_iterator, so drop the wrapper entirely. |
#
6d505d44 |
| 22-Jul-2021 |
Nikita Popov |
Add RETURN/RETVAL_COPY_DEREF() macros These were missing from the set... I think quite a few of these usages don't actually need the DEREF, but I've just kept things as is for n
Add RETURN/RETVAL_COPY_DEREF() macros These were missing from the set... I think quite a few of these usages don't actually need the DEREF, but I've just kept things as is for now.
show more ...
|
#
9d2a466c |
| 09-Jun-2021 |
Nikita Popov |
Remove explicit assignments of zend_objects_destroy_object This is the default handler, no need to set it explicitly. This makes it easier to see which objects really have a custom dtor_
Remove explicit assignments of zend_objects_destroy_object This is the default handler, no need to set it explicitly. This makes it easier to see which objects really have a custom dtor_obj.
show more ...
|
#
01b3fc03 |
| 06-May-2021 |
KsaR |
Update http->https in license (#6945) 1. Update: http://www.php.net/license/3_01.txt to https, as there is anyway server header "Location:" to https. 2. Update few license 3.0 to 3.01 as
Update http->https in license (#6945) 1. Update: http://www.php.net/license/3_01.txt to https, as there is anyway server header "Location:" to https. 2. Update few license 3.0 to 3.01 as 3.0 states "php 5.1.1, 4.1.1, and earlier". 3. In some license comments is "at through the world-wide-web" while most is without "at", so deleted. 4. fixed indentation in some files before |
show more ...
|
#
3a05cda3 |
| 12-Apr-2021 |
K <127853+kaja47@users.noreply.github.com> |
SplPriorityQueue performance improvements (#6859) This optimization is targeting cases when a SplPriorityQueue instance is used exclusively with double or long priorities. Durin
SplPriorityQueue performance improvements (#6859) This optimization is targeting cases when a SplPriorityQueue instance is used exclusively with double or long priorities. During the first insertion into an empty queue, the comparator is changed to the specialized one if the priority of inserted inserted key is long or double. During insertion to non-empty queue, comparator is swapped back to the generic one on type conflict. As a result code like following, where the weight field is always double or int, runs almost twice as fast. foreach ($items as $item) { $pqueue->insert($item, -$item->weight); if ($pqueue->count() > $size) { $pqueue->extract(); } }
show more ...
|
#
dc47b993 |
| 11-Apr-2021 |
K |
SplHeap: replace zend_parse_parameters with ZEND_PARSE_PARAMETERS* macros this change alone speeds up top-k computation significantly |
#
4f4c031f |
| 18-Feb-2021 |
Máté Kocsis |
Generate ext/spl class entries from stubs Closes GH-6709 |
#
9affbef0 |
| 11-Sep-2020 |
George Peter Banyard |
Use normal error in SPL for 'An iterator cannot be used with foreach by reference' |
#
61c299fe |
| 03-Sep-2020 |
George Peter Banyard |
Error promotions in SPL Warning to Error promotion and a Notice to Warning promotion to align with the behaviour specified in the Reclassify Engine Warnings RFC. Closes GH-6072 |
#
2b5de6f8 |
| 01-Jul-2020 |
Max Semenik |
Remove proto comments from C files Closes GH-5758 |
#
312201dc |
| 01-Jul-2020 |
Nikita Popov |
Add get_gc handle for object iterators Optional handler with the same semantics as the object handler. |
#
47fae842 |
| 12-May-2020 |
Alex Dowad |
Remove useless prototype for spl_heap_get_iterator |
#
56aebbec |
| 21-Jun-2020 |
Anatol Belski |
Merge branch 'PHP-7.4' * PHP-7.4: SplHeap: Avoid memcpy on overlapping pointer
|
#
afe14236 |
| 21-Jun-2020 |
Anatol Belski |
SplHeap: Avoid memcpy on overlapping pointer Check if data would overlap and also add an assert. Previous implementations didn't have this issue, as the direct assignment was used.
SplHeap: Avoid memcpy on overlapping pointer Check if data would overlap and also add an assert. Previous implementations didn't have this issue, as the direct assignment was used. Signed-off-by: Anatol Belski <ab@php.net>
show more ...
|
#
92c4b065 |
| 16-Jun-2020 |
Christoph M. Becker |
Use ZEND_UNREACHABLE() instead of ZEND_ASSERT(0) Instead of marking unreachable code with `ZEND_ASSERT(0)`, we introduce `ZEND_UNREACHABLE()`, so that MSVC which does not consider `asser
Use ZEND_UNREACHABLE() instead of ZEND_ASSERT(0) Instead of marking unreachable code with `ZEND_ASSERT(0)`, we introduce `ZEND_UNREACHABLE()`, so that MSVC which does not consider `assert(0)` to mark unreachable code does no longer trigger C4715[1] warnings in debug builds. This may be useful for other compilers as well. [1] <https://docs.microsoft.com/de-de/cpp/error-messages/compiler-warnings/compiler-warning-level-1-c4715?view=vs-2019>
show more ...
|
#
d7f7080b |
| 25-Apr-2020 |
Máté Kocsis |
Generate methods entries from stubs for ext/spl Closes GH-5458 |
#
258bffca |
| 21-Apr-2020 |
Alex Dowad |
Remove unused 'ce_get_iterator' field from spl_heap_object |