[php-src] PR #24521: Fix GH-24493: Upload progress destroys session on reserved property names
| From: | lazerg | Date: | Thu, 22 Oct 2026 01:22:04 +0000 |
| Subject: | [php-src] PR #24521: Fix GH-24493: Upload progress destroys session on reserved property names | ||
| Groups: | php.git-pulls | ||
| Request: | Send a blank email to git-pulls+get-39686@lists.php.net to get a copy of this message | ||
Pull Request: https://github.com/php/php-src/pull/24521
Author: lazerg
Since the upload progress handler started decoding the session with every object kept as
__PHP_Incomplete_Class, it refuses records that have a property named
__PHP_Incomplete_Class_Name, __PHP_Incomplete_Class_Serialized or
__PHP_Incomplete_Enum_Case. That refusal went through the normal decode failure path,
which destroys the session, even though a regular session_start() reads the same record
without a problem.
When the decode fails inside the upload progress handler, the session is now only closed and the
progress update is skipped, so the stored record stays as it was and the request deals with it when
it starts the session itself. I updated the expectations of
rfc1867_incomplete_class_reserved_props.phpt to match.
Fixes GH-24493