Bug #51132 [Asn->Fbk]: LinkedList max nodes, Segmentation fault
| From: | colder@php.net | Date: | Tue, 27 Apr 2010 09:22:15 +0000 |
| Subject: | Bug #51132 [Asn->Fbk]: LinkedList max nodes, Segmentation fault | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-149946@lists.php.net to get a copy of this message | ||
Edit report at http://bugs.php.net/bug.php?id=51132&edit=1
ID: 51132
Updated by: colder@php.net
Reported by: miha dot space at gmail dot com
Summary: LinkedList max nodes, Segmentation fault
-Status: Assigned
+Status: Feedback
Type: Bug
Package: SPL related
Operating System: *
PHP Version: 5.*, 6
Assigned To: colder
New Comment:
Please try using this snapshot:
http://snaps.php.net/php5.3-latest.tar.gz
For Windows:
http://windows.php.net/snapshots/
Previous Comments:
------------------------------------------------------------------------
[2010-02-24 10:06:42] pajoye@php.net
Backtrace: http://pastie.org/840266
------------------------------------------------------------------------
[2010-02-24 09:55:43] miha dot space at gmail dot com
I tried also in Windows Vista and crashes to, if I try with Windows xp
sp3 it works with $i=1000000 or until the memory_limit is reached.
------------------------------------------------------------------------
[2010-02-24 09:27:57] johannes@php.net
Etienne, please look into it. Thanks.
------------------------------------------------------------------------
[2010-02-24 09:16:21] miha dot space at gmail dot com
Description:
------------
Is there any limit i also tried with memory_get_usage and with 29000
linkedlistnodes it uses about 9.25MB. In php.ini i have max 128MB, so
this can't be the problem.
Reproduce code:
---------------
<?php
class LinkedListNode {
public $data;
public $next;
public function __construct($data) {
$this->data = $data;
$this->next = NULL;
}
}
class LinkedList {
private $first;
private $last;
public function __construct() {
$this->first = NULL;
$this->last = NULL;
}
public function insertLast($data) {
$node = new LinkedListNode($data);
if( $this->first != NULL ) {
$this->last->next = &$node;
$this->last = &$node;
}
else {
$this->first = &$node;
$this->last = &$node;
}
}
}
$list = new LinkedList();
/* it works
for($i = 0; $i < 29488; $i++) {
$list->insertLast(1);
}*/
// Segmentation fault
for($i = 0; $i < 29489; $i++) {
$list->insertLast(1);
}
?>
Expected result:
----------------
Nothin, it should exit normally, not segfault.
Actual result:
--------------
php test2.php
Segmentation fault
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/bug.php?id=51132&edit=1