History log of /PHP-8.2/ext/zend_test/tests/observer_bug81430_1.phpt (Results 1 – 9 of 9)
Revision Date Author Comments
# ed041c34 02-Apr-2024 Ilija Tovilo

Partial backport of e7462bf

e7462bff19228162a21ccc6dd248b0dbffc15517


# e7462bff 02-Apr-2024 Bob Weinand

Run one testsuite with observers enabled in CI (#13869)

Signed-off-by: Bob Weinand <bobwei9@hotmail.com>


# 625f1649 20-Jul-2022 Bob Weinand

Include internal functions in the observer API

There are two main motivations to this:
a) The logic for handling internal and userland observation can be unified.
b) Unwinding of obs

Include internal functions in the observer API

There are two main motivations to this:
a) The logic for handling internal and userland observation can be unified.
b) Unwinding of observed functions on a bailout does notably not include observers. Even if users of observers were to ensure such handling themselves, it would be impossible to retain the relative ordering - either the user has to unwind all internal observed frames before the automatic unwinding (zend_observer_fcall_end_all) or afterwards, but not properly interleaved.

Signed-off-by: Bob Weinand <bobwei9@hotmail.com>

show more ...


# 710294c9 04-May-2022 Christoph M. Becker

Fix zend_test tests

The `--EXTENSIONS--` directive isn't properly supported prior to PHP
8.1.0, so we use the classic `--SKIPIF--` instead.


# 5655f1ab 13-Apr-2022 Tim Düsterhus

Fix `--EXTENSIONS--` section for two tests in ext/zend_test

The extension name got broken in e6cf583160f2054da92426e69143e80ee28e8e16.

Closes GH-8357.


# e6cf5831 12-Feb-2022 Bob Weinand

Fix GH-8082: Prevent leaking memory on observed transient run_time_caches

This is achieved by tracking the observers on the run_time_cache (with a fixed amount of slots, 2 for each observer)

Fix GH-8082: Prevent leaking memory on observed transient run_time_caches

This is achieved by tracking the observers on the run_time_cache (with a fixed amount of slots, 2 for each observer).
That way round, if the run_time_cache is freed all associated observer data is as well.

This approach has been chosen, as to avoid any ABI or API breakage.
Future versions may for example choose to provide a hookable API for run_time_cache freeing or similar.

show more ...


# 2f6a06cc 05-Jan-2022 Benjamin Eberlei

Fix #81430: Attribute instantiation leaves dangling pointer

By switching attribute constructor stackframe to be called via
trampoline the stack allocation is not causing dangling pointer

Fix #81430: Attribute instantiation leaves dangling pointer

By switching attribute constructor stackframe to be called via
trampoline the stack allocation is not causing dangling pointers
in the zend_observer API anymore.

Co-Authored-By: Florian Sowade <f.sowade@suora.com>
Co-Authored-By: Christopher Becker <cmbecker69@gmx.de>
Co-Authored-By: Dmitry Stogov <dmitry@zend.com>

Closes GH-7885.

show more ...


# ee610947 27-Dec-2021 Christoph M. Becker

Revert "Fix zend_observer_fcall_end_all() accessing dangling pointers"

This reverts commit 76e2a8380e5e030412e9d565955d011972af8418. Cf.
<https://github.com/php/php-src/commit/76e2a8380

Revert "Fix zend_observer_fcall_end_all() accessing dangling pointers"

This reverts commit 76e2a8380e5e030412e9d565955d011972af8418. Cf.
<https://github.com/php/php-src/commit/76e2a8380e5e030412e9d565955d011972af8418#r62560239>.

show more ...


# 76e2a838 18-Nov-2021 Florian Sowade

Fix zend_observer_fcall_end_all() accessing dangling pointers

This may happen, when the execute_data was allocated on the stack. We
ensure that the runtime cache pointer is not NULL bef

Fix zend_observer_fcall_end_all() accessing dangling pointers

This may happen, when the execute_data was allocated on the stack. We
ensure that the runtime cache pointer is not NULL before dereferencing
it.

This is a partial fix for bug 81430.

Closes GH-7665.

show more ...