On Wed, 15 Jan 2003, Harald Radi wrote:

> iirc the reason why i changed it to unsigned was that actually the zend engine
> treated it as unsigned everywhere but in that particular struct. i also
> remember that i discussed that with andi and that he agreed to change this in
> the ze2 cvs module and that the extensions should be *fixed*.

    Well, fixing the engine is a small, finite task whereas
    auditing all existing extension on this planet is an
    open-ended one.  I think it is easy to see that.

    You need to realize that once a certain API has been
    established, you cannot go around and change it at will.
    Especially if the breakage is as subtle as in this case.  If
    the compiler dies, because a function takes a new number of
    arguments, it is something which becomes visible immediately.
    Signedness issues are usually hidden until someone exploits
    them.

> i agree that it
> doesn't make any sense to mix types. changing it to uint means to fix all the
> extensions, changing it to int means to fix the engine (and not just to revert
> my patch).

    In which areas of the engine did you notice defects?  If we
    had a list, we could start from there.

    - Sascha


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

Reply via email to