mirror of
https://github.com/php/php-src.git
synced 2026-04-28 18:53:33 +02:00
ccc6c0f78c
This is a quick fix for the problem. It'll work while all the JIT-ed functions have the same "fixed stack frame". Unwinder uses hard-coded unwind data for this "fixed stack frame". * Preallocate space for Win64 shadow args * typo * Setup unwinder for JIT functions * Revert "Dynamically xfail test case which fails on CI" This reverts commit7cc327fd5a. * Revert "Dynamically xfail test case which fails on CI" This reverts commitbdde797159. * Revert "Dynamically xfail test cases which fail on CI (GH-15710)" This reverts commit6d5962074f. * Remove XFAIL sections * Add hard-coded SEH unwind data for EXITCALL * Fix unwind data * Fix Windows multi-process support * Typo
38 lines
758 B
PHP
38 lines
758 B
PHP
--TEST--
|
|
Bug #54268 (Double free when destroy_zend_class fails)
|
|
--INI--
|
|
memory_limit=8M
|
|
--SKIPIF--
|
|
<?php
|
|
$zend_mm_enabled = getenv("USE_ZEND_ALLOC");
|
|
if ($zend_mm_enabled === "0") {
|
|
die("skip Zend MM disabled");
|
|
}
|
|
?>
|
|
--FILE--
|
|
<?php
|
|
class DestructableObject
|
|
{
|
|
public function __destruct()
|
|
{
|
|
DestructableObject::__destruct();
|
|
}
|
|
}
|
|
class DestructorCreator
|
|
{
|
|
public $test;
|
|
public function __destruct()
|
|
{
|
|
$this->test = new DestructableObject;
|
|
}
|
|
}
|
|
class Test
|
|
{
|
|
public static $mystatic;
|
|
}
|
|
$x = new Test();
|
|
Test::$mystatic = new DestructorCreator();
|
|
?>
|
|
--EXPECTF--
|
|
Fatal error: Allowed memory size of %s bytes exhausted%s(tried to allocate %s bytes) in %s on line %d
|