SM>>Do you know _any_ external extension that relies on the fact that
SM>>file_handle is only STREAM - taking into account this is false -
SM>>file-handle can perfectly well be anything else prior to calling fixup
SM>>- and probably after too, since dtor does have switch? Can you explain

BTW, after more look on the code - NOTHING guarantees you the handle is 
STREAM after the fixup, since fixup calls zend_stream_open, and 
zend_stream_open calls zend_stream_open_function which is overridable and 
can set file_handle to *anything* - and only FP would be converted to 
STREAM, but all others typed would not. So actually if anybody overrides 
zend_stream_open_function so that it returns anything but STREAM or FP 
(and there's no indication anywhere why such behaviour would not be 
acceptable) - the extension that supposes handles can be only STREAM even 
after fixup is broken. Only thing fixup is guaranteeing that the handle is 
never FP - which I don't see to be a reasonble thing anyway, why FP is so 
special that there's a dedicated function to kill it?
-- 
Stanislav Malyshev, Zend Products Engineer   
[EMAIL PROTECTED]  http://www.zend.com/ +972-3-6139665 ext.115

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

Reply via email to