Hehe. U probably understand it better than I do. I simply found the issue annoying while testing the port of php 5.0.2 on my netware server as it would cause an abend so reported it to the novell dev's as I had assumed it was netware specific. Turns out it wasn't an issue only on Netware.
The last post (the real long one) in the php bug report has all the dirty details of where and why.
----------
The code snippet which causes this segmentation fault
might sound funny. But it is the root cause of major functionality in
xoops application.
This will happen only with 7 character member arrays which is indexed
with non existent entry and function call is made on that.
Based on my study of the issue let me explain this,
$somenonexistentobject->sevench[0]()
$somenonexistentobject->sevench[0] this evaluates to Long.
While zend_do_begin_method_call
last_op_number = get_next_op_number(CG(active_op_array))-1;
last_op = &CG(active_op_array)->opcodes[last_op_number];
Assumes last_op's op2 to be string always which is incorrect in this
case.
etc...
-----------
Apparently Kameshj already fixed php in the cvs so hopefully his patches stick and we see them in a public release of php 5.0.3 or 5.1 soon. I'm probably just gonna compile the cvs fixed version for myself and will host it on my site for any netware users looking for it. Not sure when I'll have the time though.
Current netware ports by Guenter Knauf are at
http://www.gknw.com/php/dev/ A Novell supported/maintained build of 5.x will be included with netware starting with 6.5sp3 and OES. I think their version already has the fix in it
6.5sp3 and oes are in authorized beta right now so either sign up to join the betas at
http://www.novell.com/beta or wait for the public betas later in November
Rodney