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