Just to followup on today's threads on both the strange PHP 4.3.10 apache
coredump/sitting and spinning in malloc() bug #31508 and the losing $this
variable bug 31525.
Both, it turns out, were caused because I was returning references inside
parenthetical expression on return(). i.e.
function &somefunc()
{
return( $somevar )
}
In the test case, PHP 5.0.3 with E_STRICT
turned on correctly identified
this as an error. However, running the full body of code I have through it
/did not/.
I went through and replaced all my return( xxx ); calls to return xxx; and
retried. Under PHP 5.0.3 it ran like a champ. And to my surprise the PHP
4.3.10 sitting/spinning/coredump problem I had noticed also disappeared (I
had a very specific setup that was reproducing the problem consistently.)
If return( $this ) is not correct for a function returning a reference, it
seems to me both PHP 4.3 and PHP 5 should generate some kind of error
message even without E_STRICT.
thanks again for everyones help,
-- Yermo
DTLink Software http://www.dtlink.com
Desktop Software and Web Applications