Segmentation fault (stack overflow) in Zend/zend_alloc.c:1435
Offen
Dieses Issue hat noch niemand übernommen.
Bug
Status: Needs Triage
- Vorherrschende Sprache
- C
- Sterne
- 40.4k
- Forks
- 8.1k
- Ø Merge
- 2 T. 13 Std.
- Gemergte PRs (30 T.)
- 96
Beschreibung
Description
The following code:
<?php
class MemoryLeak
{
public function __construct()
{
$this->things[] = $this;
}
public function __destruct()
{
$fusion->things[] = null;
}
}
for ($i = 0; $i < 100000; ++$i) {
$obj = new MemoryLeak();
}
Resulted in this output: https://3v4l.org/9eRM1/rfc#vgit.master
PHP Version
PHP 8.4.0-dev
Operating System
ubuntu 22.04
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne damit, das bereitgestellte PHP-Beispiel unter PHP 8.4.0-dev zu reproduzieren und Zend/zend_alloc.c in Zeile 1435 zu untersuchen. Verwende die verlinkte 3v4l-Ausgabe, um den Fehler zu vergleichen, und verfolge anschließend das Verhalten des Allocators rund um den gemeldeten stack overflow. Die Aufgabe ist abgeschlossen, wenn der Reproducer keinen segmentation fault mehr verursacht.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- c, php
- Bereich
- backend
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100