|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2005-01-11 16:41 UTC] Jason at amp-design dot net
[2005-03-19 19:53 UTC] helly@php.net
|
|||||||||||||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Fri Oct 24 07:00:01 2025 UTC |
Description: ------------ This crashes both on PHP 5.0.3 on Windows 2003 / Apache 2.0.52 and Centos 3 (Redhat Entperise Linux 3 for cheapskates) with Apache 2.0.48 and PHP 5.0.2 This occurs due to the Exception thrown. Removing the exception will prevent the crash. Reproduce code: --------------- <?php header('Content-type: text/plain'); class FooBar implements ArrayAccess { private $array = array(); public function offsetExists($index) { return isset($this->array[$index]); } public function offsetGet($index) { return $this->array[$index]; } public function offsetSet($index, $value) { $this->array[$index] = $value; } public function offsetUnset($index) { throw new Exception('Just try and make me crash ya sucker ;-)'); unset($this->array[$index]); } } $i = 0; $foo = new FooBar(); $foo[$i] = $i++; $foo[$i] = $i++; $foo[$i] = $i++; unset($foo[1]); print_R($foo); ?> Expected result: ---------------- $foo would dump out it's array elements which should be 0 and 2 Actual result: -------------- Apache crash (exists with Parent: child process exited with status 3221225477 -- Restarting on Windows Apache 2 log, dunno about Linux, can't be faffed to mess about in SSH, however I do not get a HTTP reponse, and therefore I assume it segfaults)