zee, andi -
in threded mode we access (atleast)
EG(uninitialized_zval_ptr) before it's initialized -
BadIdea(tm)
what happens is that (see assert.c as an example)
OnChangeCallback gets called by the ini-mechanism before the
executor is initialized.
but
TCA but zval_ptr_dtor (used in assert.c-OnChangeCallback) checks
TCA against EG(uninitialized_zval_ptr) - so calling zval_ptr_dtor
TCA anytime before init_executor will cause an UMR.
Actually, zval_ptr_dtor calls zval_dtor, which does much more EG(...)
games than just
On Mon, Oct 28, 2002 at 05:24:38PM +0200, Stanislav Malyshev wrote:
TCA but zval_ptr_dtor (used in assert.c-OnChangeCallback) checks
TCA against EG(uninitialized_zval_ptr) - so calling zval_ptr_dtor
TCA anytime before init_executor will cause an UMR.
Actually, zval_ptr_dtor calls
TCA yep - but can we simply move init_executor a bit up?
I fear it's as up as it can be - just the start of zend_activate(). The
problem, as it seems, is that some code can be called before
zend_activate() - like INI handlers.
--
Stanislav Malyshev, Zend Products Engineer
[EMAIL
At 07:35 28/10/2002, Thies C. Arntzen wrote:
On Mon, Oct 28, 2002 at 05:24:38PM +0200, Stanislav Malyshev wrote:
TCA but zval_ptr_dtor (used in assert.c-OnChangeCallback) checks
TCA against EG(uninitialized_zval_ptr) - so calling zval_ptr_dtor
TCA anytime before init_executor will
On Mon, Oct 28, 2002 at 05:49:44PM -0800, Zeev Suraski wrote:
At 07:35 28/10/2002, Thies C. Arntzen wrote:
On Mon, Oct 28, 2002 at 05:24:38PM +0200, Stanislav Malyshev wrote:
TCA but zval_ptr_dtor (used in assert.c-OnChangeCallback) checks
TCA against EG(uninitialized_zval_ptr) - so
At 05:40 PM 10/28/2002 +0200, Stanislav Malyshev wrote:
TCA yep - but can we simply move init_executor a bit up?
I fear it's as up as it can be - just the start of zend_activate(). The
problem, as it seems, is that some code can be called before
zend_activate() - like INI handlers.
Right