[pull] master from php:master - #1299
Merged
Merged
Conversation
Do not replace pending exceptions with return-value validation errors in the user handler adapter, including exceptions raised while destroying invalid return values. This preserves the original exception for session_start(), session_create_id(), and session_regenerate_id(). Closes GH-23854
* PHP-8.4: ext/session: Preserve exceptions thrown by create_sid()
* PHP-8.5: ext/session: Preserve exceptions thrown by create_sid()
* PHP-8.6: ext/session: Preserve exceptions thrown by create_sid()
This function is unsafe, because it reused the `retval` for each execution, without clearing it in-between each script, leading to memory leaks. Instead of fixing it, we just remove it: Writing a loop yourself is not much more complicated than using this variadic function and provides more flexibility.
Move the "and" and add a period
zend_object_alloc() zeroes the object, so cached_resize started at 0, which spl_fixedarray_resize() reads as "resize in progress" and returns early. setSize() therefore did nothing on subclasses whose constructor does not call parent::__construct(). Initialise the struct on object creation. setSize(0) clears the array before destroying its elements, so it looks unconstructed to userland. __construct(), __wakeup() and __unserialize() then re-initialised it, and the in-progress clear discarded the buffer they had installed. cb3dc62 fixed the same leak for a re-entrant setSize() by testing the resize sentinel first; apply that test to the other three entry points. Close GH-23812
* PHP-8.4: Fix GH-23811: SplFixedArray leak on re-init and broken setSize()
* PHP-8.5: Fix GH-23811: SplFixedArray leak on re-init and broken setSize()
* PHP-8.6: Fix GH-23811: SplFixedArray leak on re-init and broken setSize()
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by
pull[bot] (v2.0.0-alpha.4)
Can you help keep this open source service alive? 💖 Please sponsor : )