1
0
mirror of https://github.com/php/php-src.git synced 2026-03-24 00:02:20 +01:00

Merge branch 'PHP-8.1' into PHP-8.2

* PHP-8.1:
  Make bug70417.phpt less flaky
This commit is contained in:
Niels Dossche
2025-12-15 08:14:48 +01:00

View File

@@ -3,32 +3,17 @@ Bug #70417 (PharData::compress() doesn't close temp file)
--EXTENSIONS--
phar
zlib
--SKIPIF--
<?php
exec('lsof -p ' . getmypid(), $out, $status);
if ($status !== 0) {
die("skip lsof(8) not available");
}
if (!str_starts_with($out[0], 'COMMAND')) {
die("skip Might be a different lsof");
}
?>
--FILE--
<?php
function countOpenFiles() {
exec('lsof -p ' . escapeshellarg(getmypid()) . ' 2> /dev/null', $out); // Note: valgrind can produce false positives for /usr/bin/lsof
return count($out);
}
$filename = __DIR__ . '/bug70417.tar';
@unlink("$filename.gz");
$openFiles1 = countOpenFiles();
$resBefore = count(get_resources());
$arch = new PharData($filename);
$arch->addFromString('foo', 'bar');
$arch->compress(Phar::GZ);
unset($arch);
$openFiles2 = countOpenFiles();
var_dump($openFiles1 === $openFiles2);
$resAfter = count(get_resources());
var_dump($resBefore === $resAfter);
?>
--CLEAN--
<?php