From: [EMAIL PROTECTED]
Operating system: OS400
PHP version: 4.0.4pl1
PHP Bug Type: Reproduceable crash
Bug description: Pointer not set exception on a realloc
Got the PHP to compile and build, now I am doing some simple tests. On initial
invocation to PHP, I get the following exception:
Message . . . . : Pointer not set for location referenced.
Cause . . . . . : A pointer was used, either directly or as a basing pointer, that
has not been set to an address.
The exception was in c file zend_alloc.c, routine _erealloc(). The problem code is
the first line:
ZEND_API void *_erealloc(void *ptr, size_t size, int allow_failure ZEND_FILE_LINE_DC
ZEND_FILE_LINE_ORIG_DC)
{
zend_mem_header *p = (zend_mem_header *) ((char
*)ptr-sizeof(zend_mem_header)-PLATFORM_PADDING);
zend_mem_header *orig = p;
DECLARE_CACHE_VARS
ALS_FETCH();
if (!ptr) {
return _emalloc(size ZEND_FILE_LINE_RELAY_CC
ZEND_FILE_LINE_ORIG_RELAY_CC);
}
.
.
.
}
The first line is referencing the pointer without checking if it is NULL. I moved the
first 2 lines after the if-check and it cleared up the problem.
--
Edit Bug report at: http://bugs.php.net/?id=9505&edit=1
--
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]