Skip to content

Conversation

@TysonAndre
Copy link
Contributor

This was using strcmp instead of zend_string_equals_literal.
As a result, the property count didn't match the number of properties
being serialized if properties started with
"__PHP_Incomplete_Class\0" (unlikely)

(before, 'O:8:"Missing_":1:{}' would be serialized, which failed to
unserialize because it expected 1 property but reached the end of the set)

Everywhere else expects the MAGIC_MEMBER to match exactly,
and this should use zend_string_equals_literal as an example for other code.

This has used strcmp since 2004 in deb84be

This was using strcmp instead of zend_string_equals_literal.
As a result, the property count didn't match the number of properties
being serialized if properties started with
"__PHP_Incomplete_Class\0" (unlikely)

(before, `'O:8:"Missing_":1:{}'` would be serialized, which failed to
unserialize)

Everywhere else expects the MAGIC_MEMBER to match exactly,
and this should use zend_string_equals_literal as an example for other code.

This has used strcmp since 2004 in deb84be
@php-pulls php-pulls closed this in 0d99628 Jan 4, 2021
@TysonAndre TysonAndre deleted the __PHP_INCOMPLETE_CLASS branch January 4, 2021 15:23
k4my4b added a commit to k4my4b/docker-cloud that referenced this pull request Jul 4, 2025
The igbinary extension requires the session module to be
statically linked to register its serializer.

- Switched from `--enable-session=shared` to `--enable-session=static`
  to resolve `igbinary session support => no`
- Removed dynamic loading of session.so from php.ini

References:
- igbinary/igbinary#199
- https://github.com/php/php-src/issues/7833
- php/php-src#6555
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants