History log of /php-src/Zend/zend_object_handlers.c (Results 51 – 75 of 672)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 5f8ed776 12-Jul-2021 Nikita Popov

Fix GC of object properties HT

We partially fixed this in bug #78379, but still don't handle
the case where the properties array is marked as grey first,
which causes a delref to not

Fix GC of object properties HT

We partially fixed this in bug #78379, but still don't handle
the case where the properties array is marked as grey first,
which causes a delref to not be performed later.

Fix this by treating the object properties HT the same way as
other refcounted values, including addrefs/delrefs. The object
dtor code already handles properties HT with NULL GC type, so
out of order destruction should not be a problem.

Fixes oss-fuzz #36023.

show more ...

# a80360db 09-Jul-2021 Nikita Popov

Deprecate direct access to static trait members

Static trait members may only be accessed through a class in which
the trait is used, not directly on the trait.

A complication h

Deprecate direct access to static trait members

Static trait members may only be accessed through a class in which
the trait is used, not directly on the trait.

A complication here is that we should not store static
methods/properties for which a deprecation is triggered in a
cache slot. As the check for this is simple and cheap, I'm handling
this in the cache slot population code in the VM. The alternative
would be to pass the cache slot down into the fetching code.

Part of https://wiki.php.net/rfc/deprecations_php_8_1.

show more ...

# cdbe39b1 09-Jul-2021 Nikita Popov

Remove unnecessary property name unmangling

The property name isn't mangled in this context. Unmangling would
only be necessary if we used the name stored in the property_info.

# 2fe242db 09-Jul-2021 Nikita Popov

Remove leftover handling of PHP4 constructors

This seems to be mapping ParentClass::ParentClass() to
ParentClass::__construct(), but only for non-__construct ctors,
which don't exist

Remove leftover handling of PHP4 constructors

This seems to be mapping ParentClass::ParentClass() to
ParentClass::__construct(), but only for non-__construct ctors,
which don't exist anymore.

show more ...

# 53fba3a1 02-Jul-2021 Nikita Popov

Merge branch 'PHP-8.0'

* PHP-8.0:
Fixed bug #80173


# 4e66e6a7 02-Jul-2021 Nikita Popov

Merge branch 'PHP-7.4' into PHP-8.0

* PHP-7.4:
Fixed bug #80173


# bdc60fa7 02-Jul-2021 Nikita Popov

Fixed bug #80173

The analysis in the bug report wasn't correct (at least not in
this case -- there may still be a more general problem here),
the issue was that write_property return

Fixed bug #80173

The analysis in the bug report wasn't correct (at least not in
this case -- there may still be a more general problem here),
the issue was that write_property returned the original variable_ptr
rather than the zend_assign_to_variable() return value, which will
DEREF the variable before overwriting it.

show more ...

Revision tags: php-8.0.7, php-7.4.20
# a76d35ab 25-May-2021 Nikita Popov

Remove commented code from get_method handler

Revision tags: php-8.0.7RC1, php-7.4.20RC1, php-8.0.6
# 2aac6160 04-May-2021 Nikita Popov

Merge branch 'PHP-8.0'

* PHP-8.0:
Don't treat failed assignment as initialization


# 398cfb98 04-May-2021 Nikita Popov

Don't treat failed assignment as initialization

Only reset the uninitialized property flag once the type check
has succeeded. Previously the property was treated as unset rather
than

Don't treat failed assignment as initialization

Only reset the uninitialized property flag once the type check
has succeeded. Previously the property was treated as unset rather
than uninitialized after a failed assignment.

Noticed this edge-case while working on accessors...

show more ...

Revision tags: php-7.4.19, php-7.4.18, php-7.3.28, php-8.0.5, php-8.0.5RC1, php-7.4.18RC1
# 462da6e0 31-Mar-2021 Josh Soref

Fix spelling and grammar mistakes

This PR corrects misspellings identified by the check-spelling action.

The misspellings have been reported at jsoref@b6ba3e2#commitcomment-48946465

Fix spelling and grammar mistakes

This PR corrects misspellings identified by the check-spelling action.

The misspellings have been reported at jsoref@b6ba3e2#commitcomment-48946465

The action reports that the changes in this PR would make it happy: jsoref@602417c

Closes GH-6822.

show more ...

Revision tags: php-8.0.4RC1, php-7.4.17RC1, php-8.0.3, php-7.4.16, php-8.0.3RC1, php-7.4.16RC1, php-8.0.2, php-7.4.15, php-7.3.27, php-8.0.2RC1, php-7.4.15RC2, php-7.4.15RC1, php-8.0.1, php-7.4.14, php-7.3.26, php-7.4.14RC1, php-8.0.1RC1, php-7.3.26RC1, php-8.0.0, php-7.3.25, php-7.4.13, php-8.0.0RC5, php-7.4.13RC1, php-8.0.0RC4, php-7.3.25RC1, php-7.4.12, php-8.0.0RC3, php-7.3.24, php-8.0.0RC2, php-7.4.12RC1, php-7.3.24RC1, php-7.2.34, php-8.0.0rc1
# 5caaf40b 29-Sep-2020 George Peter Banyard

Introduce pseudo-keyword ZEND_FALLTHROUGH

And use it instead of comments

# 9da66e6a 01-Mar-2021 Dmitry Stogov

Optimized object conversion to array without rebulding properties HashTable

# 72c3eded 26-Feb-2021 Dmitry Stogov

Change the order of properties used for var_dump(), serialize(), comparison, etc.
Now properties are ordered according to their layout in zend_object structure.

# db2e2af1 18-Feb-2021 Nikita Popov

Fixed bug #53826

We should handle the case where the method doesn't exist, and
where it is not visible the same way.

# 1f04f162 16-Feb-2021 Nikita Popov

Merge branch 'PHP-8.0'

* PHP-8.0:
Fixed bug #80723


# cb9785ad 16-Feb-2021 Nikita Popov

Fixed bug #80723

This fixes the issue just for the Socket class. Presumably we'll
want to do the same for other "resource" objects.

# 3e01f5af 15-Jan-2021 Nikita Popov

Replace zend_bool uses with bool

We're starting to see a mix between uses of zend_bool and bool.
Replace all usages with the standard bool type everywhere.

Of course, zend_bool

Replace zend_bool uses with bool

We're starting to see a mix between uses of zend_bool and bool.
Replace all usages with the standard bool type everywhere.

Of course, zend_bool is retained as an alias.

show more ...

# 28e21d80 16-Oct-2020 Nikita Popov

Fix leak when setting dynamic property on generator

Revision tags: php-7.4.11, php-7.3.23, php-8.0.0beta4
# a009d370 15-Sep-2020 Nikita Popov

Merge branch 'PHP-7.4'

* PHP-7.4:
Fix assumption about property guard hash value


# 2bbf2a91 15-Sep-2020 Nikita Popov

Fix assumption about property guard hash value

The "member" string here does not necessarily have a pre-calculated
hash value. In particular this is not the case if the class has no

Fix assumption about property guard hash value

The "member" string here does not necessarily have a pre-calculated
hash value. In particular this is not the case if the class has no
properties.

Fixes oss-fuzz #25546.

show more ...

# da0663a3 15-Sep-2020 Nikita Popov

Add GC_TRY_ADDREF macro

That adds a ref if not immutable. Also audit uses of GC_IMMUTABLE
to either use GC_TRY_ADDREF or GC_TRY_PROTECT_RECURSION.

Revision tags: php-7.4.11RC1, php-7.3.23RC1, php-8.0.0beta3, php-7.4.10
# 88a8ebce 01-Sep-2020 Nikita Popov

Merge branch 'PHP-7.4'

* PHP-7.4:
Check for null EX(func) in write_property


# f92a0362 01-Sep-2020 Nikita Popov

Check for null EX(func) in write_property

This can happen if zend_call_function inserted a dummy frame,
and we already switched to the dummy frame in leave_helper,
and an exception i

Check for null EX(func) in write_property

This can happen if zend_call_function inserted a dummy frame,
and we already switched to the dummy frame in leave_helper,
and an exception is thrown during CV destruction.

Fixes oss-fuzz #25343.

show more ...

Revision tags: php-7.3.22
# 570f463f 31-Aug-2020 Nikita Popov

Merge branch 'PHP-7.4'

* PHP-7.4:
Fix bug #80037


12345678910>>...27