History log of /PHP-7.4/Zend/zend_gc.c (Results 1 – 25 of 178)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: php-7.3.13RC1, php-7.2.26RC1, php-7.4.0, php-7.2.25
# b037fe5b 20-Nov-2019 Tyson Andre

Handle reallocated root buffer during GC destroy phase (v2)

We no longer protect GC during the destroy phase, so we need to
deal with buffer reallocation.

Note that the implemen

Handle reallocated root buffer during GC destroy phase (v2)

We no longer protect GC during the destroy phase, so we need to
deal with buffer reallocation.

Note that the implementation of spl_SplObjectStorage_free_storage
will call the destructor of SplObjectStorage, and free the instance properties,
which I think is what caused the root buffer to be reallocated.
(`current` is a pointer for an index within the root buffer?)

This fixes bug #78811 for me.

Closes GH-4935

show more ...


Revision tags: php-7.3.12
# 3f4a1511 15-Nov-2019 Nikita Popov

Handle reallocated root buffer during GC destroy phase

We no longer protect GC during the destroy phase, so we need to
deal with buffer reallocation.

Possible fix for bug #78811.


Revision tags: php-7.4.0RC6, php-7.3.12RC1, php-7.2.25RC1, php-7.4.0RC5, php-7.1.33, php-7.2.24, php-7.3.11, php-7.4.0RC4, php-7.3.11RC1, php-7.2.24RC1, php-7.4.0RC3, php-7.2.23, php-7.3.10
# 73115ef8 23-Sep-2019 Nikita Popov

Fixed bug #78589

Don't protect GC while destroying zvals. We may need to add GC
roots during this phase.


Revision tags: php-7.4.0RC2, php-7.2.23RC1, php-7.3.10RC1, php-7.4.0RC1, php-7.1.32, php-7.2.22, php-7.3.9
# 589542f5 26-Aug-2019 Nikita Popov

Remove properties HT from nested GC data

The properties HT may be a GC root itself, so we need to remove it.
I'm not sure this issue actually applies to PHP 7.2, but committing
it th

Remove properties HT from nested GC data

The properties HT may be a GC root itself, so we need to remove it.
I'm not sure this issue actually applies to PHP 7.2, but committing
it there to be safe. As seen from the test case, the handling here
is rather buggy on 7.2.

show more ...


Revision tags: php-7.4.0beta4
# c238b5bb 14-Aug-2019 Nikita Popov

Fix reference printing in GC tracing


Revision tags: php-7.2.22RC1, php-7.3.9RC1, php-7.4.0beta2
# 60a7e60b 01-Aug-2019 Nikita Popov

Fixed bug #72530

For objects with destructors, we will now only call the destructor
in the initial GC run, and remove any nested data. The object is
marked purple so it will be consi

Fixed bug #72530

For objects with destructors, we will now only call the destructor
in the initial GC run, and remove any nested data. The object is
marked purple so it will be considered a root for the next GC run,
at which point it will be fully destroyed, if possible.

GC counts change on a number of tests, as the objects now get
destroyed later.

show more ...


# 72b7d99d 13-Aug-2019 Nikita Popov

Remove removed nested data from GC count


# f0f3fe0b 13-Aug-2019 Nikita Popov

Don't include non-refcounted structures in GC count


# 7bd2b9d2 13-Aug-2019 Nikita Popov

Generalize delref assertion

The refcount should never become negative, not just during GC.


# 9b43e29d 09-Aug-2019 Dmitry Stogov

Fixed handling of references in nested data of objects with destructor


# 6b1cc125 09-Aug-2019 Dmitry Stogov

Fixed second part of the bug #78379 (Cast to object confuses GC, causes crash)


# 2e2cd65d 09-Aug-2019 Dmitry Stogov

Added asserts to catch GC errors when refcount goes below zero.


# 38f10ff5 08-Aug-2019 Nikita Popov

Fix GC tracing

Due to the GC changes in 7.3 we stopped tracing most of the
interesting coloring changes...


# 170a3f87 06-Aug-2019 Dmitry Stogov

Don't set GC_HAS_DESTRUCTORS flag if destructors were already called


Revision tags: php-7.1.31, php-7.2.21, php-7.3.8, php-7.4.0beta1, php-7.2.21RC1, php-7.3.8RC1
# 193f28c7 15-Jul-2019 Nikita Popov

Fixed bug #78010

Prevent the gc_info from becoming all zero for a registered root
by setting the top bit to one for compressed root addresses.


Revision tags: php-7.4.0alpha3, php-7.3.7, php-7.2.20, php-7.4.0alpha2, php-7.3.7RC3
# 3d429869 19-Jun-2019 Nikita Popov

Fix shift UB in constants

We were shifting out the top bit of a signed integer.


Revision tags: php-7.3.7RC2, php-7.2.20RC2, php-7.4.0alpha1, php-7.3.7RC1, php-7.2.20RC1, php-7.2.19, php-7.3.6, php-7.1.30, php-7.2.19RC1, php-7.3.6RC1, php-7.1.29, php-7.2.18, php-7.3.5, php-7.2.18RC1, php-7.3.5RC1
# 231fecee 10-Apr-2019 ROVAST

fix a spell mistake

possbile => possible


Revision tags: php-7.2.17, php-7.3.4, php-7.1.28, php-7.3.4RC1, php-7.2.17RC1
# 9499484e 14-Mar-2019 Dmitry Stogov

Implemented a faster way to access predefined TSRM resources - CG(), EG(), etc.


# 824a9333 12-Mar-2019 Dmitry Stogov

Better data packing


# 5da591c5 07-Mar-2019 Dmitry Stogov

Fixed bug #77345 (Stack Overflow caused by circular reference in garbage collection)


Revision tags: php-7.1.27, php-7.3.3, php-7.2.16, php-7.3.3RC1, php-7.2.16RC1
# da3316ff 18-Feb-2019 Tyson Andre

Fix typos in code comments in Zend/ [skip ci]


Revision tags: php-7.2.15, php-7.3.2, php-7.2.15RC1
# 92ac598a 22-Jan-2019 Peter Kokot

Remove local variables

This patch removes the so called local variables defined per
file basis for certain editors to properly show tab width, and
similar settings. These are mainly

Remove local variables

This patch removes the so called local variables defined per
file basis for certain editors to properly show tab width, and
similar settings. These are mainly used by Vim and Emacs editors
yet with recent changes the once working definitions don't work
anymore in Vim without custom plugins or additional configuration.
Neither are these settings synced across the PHP code base.

A simpler and better approach is EditorConfig and fixing code
using some code style fixing tools in the future instead.

This patch also removes the so called modelines for Vim. Modelines
allow Vim editor specifically to set some editor configuration such as
syntax highlighting, indentation style and tab width to be set in the
first line or the last 5 lines per file basis. Since the php test
files have syntax highlighting already set in most editors properly and
EditorConfig takes care of the indentation settings, this patch removes
these as well for the Vim 6.0 and newer versions.

With the removal of local variables for certain editors such as
Emacs and Vim, the footer is also probably not needed anymore when
creating extensions using ext_skel.php script.

Additionally, Vim modelines for setting php syntax and some editor
settings has been removed from some *.phpt files. All these are
mostly not relevant for phpt files neither work properly in the
middle of the file.

show more ...


# a81202ac 30-Jan-2019 Zeev Suraski

Adios, yearly copyright ranges


Revision tags: php-7.3.2RC1, php-5.6.40, php-7.1.26, php-7.3.1, php-7.2.14, php-7.2.14RC1, php-7.3.1RC1, php-5.6.39, php-7.1.25, php-7.2.13, php-7.0.33, php-7.3.0, php-7.1.25RC1, php-7.2.13RC1, php-7.3.0RC6, php-7.1.24, php-7.2.12, php-7.3.0RC5
# 9afce019 01-Nov-2018 Zeev Suraski

Future-proof email addresses


# 54dc07f3 01-Nov-2018 Zeev Suraski

Update email addresses. We're still @Zend, but future proofing it...


12345678