RE: [ZEND-ENGINE-CVS] cvs: ZendEngine2 / zend_builtin_functions.c php-src NEWS

From: Date: Fri, 04 Nov 2005 00:18:35 +0000
Subject: RE: [ZEND-ENGINE-CVS] cvs: ZendEngine2 / zend_builtin_functions.c php-src NEWS
References: 1 2  Groups: php.zend-engine.cvs 
Request: Send a blank email to php-zend-engine-cvs+get-4322@lists.php.net to get a copy of this message
Yep, I think it can be useful but unless we have a bullet proof implementation (which we don't feel is a hack and might break), it's best not to do it. I'm coming in kind of late so I'll look into whether this was resolved as I read my emails. Andi At 12:35 PM 10/31/2005, Dmitry Stogov wrote:
-----Original Message----- From: Derick Rethans [mailto:derick@php.net] Sent: Monday, October 31, 2005 11:32 PM To: Dmitry Stogov Cc: 'Zeev Suraski'; 'Sebastian Bergmann'; zend-engine-cvs@lists.php.net; 'Andi Gutmans'; 'Marcus Boerger'; 'Ilia Alshanetsky' Subject: RE: [ZEND-ENGINE-CVS] cvs: ZendEngine2 / zend_builtin_functions.c php-src NEWS On Mon, 31 Oct 2005, Dmitry Stogov wrote:
The problem is conceptual. Before this patch PHP looked for EG(exception) after calling constructor and disabled destructor calling.
    if (EG(exception) && ctor_opline) {
      if (RETURN_VALUE_USED(ctor_opline)) {
        EG(This)->refcount--;
      }
      if (EG(This)->refcount == 1) {
        zend_object_store_ctor_failed(EG(This) TSRMLS_CC);
      }
    }
Now the object also stored in backtrace so refcount is more then 1. Probably we can check refcount with 2, but I am not sure that is a proper way.
We can also revert it simply, as I don't see a huge point in having the object *itself* in the backtrace... Derick Of course we can. :) But probably $this can be really useful in debug backtrace. Dmitry.


« previous php.zend-engine.cvs (#4322) next »