* Thus wrote Antony Dovgal:
> And the last one, the most questionable patch.
> 
> ATM ZE2 calls destructor at the end of the request and no matter
> is there were a fatal error (which should probably stop executing
> the script).  In some cases it leads to nasty segfaults (me and
> report's author can reproduce it, but others can't. weird..).

I'm not sure if this has anything to do with it but the destructor
is being called before the constructor actually finishes, I would
think the state of the object itself isn't stable. I can stop the
segfault happening if I cause the fatal error after the object is
created.

> 
> Some persons (hello, Andrey =)) think that this could be a useful
> feature, but for me it's just an inconsistency. IMO destructors
> should not be called after fatal errors, because they can cause
> even more harm.

Might want to add me to that list :)  A use I can see is if the
object manages a buffer of some sort and the destructor ensures
that it is flushed, a bypass of the destructor would cause the
buffer to get lost.


Curt
-- 
First, let me assure you that this is not one of those shady pyramid schemes
you've been hearing about.  No, sir.  Our model is the trapezoid!

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to