mirror of
https://github.com/php/php-src.git
synced 2024-09-22 02:17:32 +00:00
Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3: Added test for bug #51353. It'll be skipped by default and must be activated manually.
This commit is contained in:
commit
d304527253
54
ext/zip/tests/bug51353.phpt
Normal file
54
ext/zip/tests/bug51353.phpt
Normal file
@ -0,0 +1,54 @@
|
||||
--TEST--
|
||||
Bug #51353 ZIP64 problem, archive with 100000 items
|
||||
--SKIPIF--
|
||||
<?php
|
||||
if(!extension_loaded('zip')) die('skip');
|
||||
die('skip the test might get very long, activate it manually');
|
||||
--FILE--
|
||||
<?php
|
||||
/* This test might get very long depending on the mashine it's running on. Therefore
|
||||
adding an explicit skip, remove it to run this test. */
|
||||
set_time_limit(0);
|
||||
|
||||
$base_path = dirname(__FILE__);
|
||||
|
||||
/* Either we ship a file with 100000 entries which would be >12M big,
|
||||
or create it dynamically. */
|
||||
$zip = new ZipArchive;
|
||||
$r = $zip->open("$base_path/51353.zip", ZIPARCHIVE::CREATE | ZIPARCHIVE::OVERWRITE);
|
||||
if ($r) {
|
||||
for ($i = 0; $i < 100000; $i++) {
|
||||
$zip->addFromString("$i.txt", '1');
|
||||
}
|
||||
$zip->close();
|
||||
} else {
|
||||
die("failed");
|
||||
}
|
||||
|
||||
$zip = new ZipArchive;
|
||||
$r = $zip->open("$base_path/51353.zip");
|
||||
if ($r) {
|
||||
$zip->extractTo("$base_path/51353_unpack");
|
||||
$zip->close();
|
||||
|
||||
$a = glob("$base_path/51353_unpack/*.txt");
|
||||
echo count($a) . "\n";
|
||||
} else {
|
||||
die("failed");
|
||||
}
|
||||
|
||||
echo "OK";
|
||||
--CLEAN--
|
||||
<?php
|
||||
$base_path = dirname(__FILE__);
|
||||
|
||||
unlink("$base_path/51353.zip");
|
||||
|
||||
$a = glob("$base_path/51353_unpack/*.txt");
|
||||
foreach($a as $f) {
|
||||
unlink($f);
|
||||
}
|
||||
rmdir("$base_path/51353_unpack");
|
||||
--EXPECT--
|
||||
100000
|
||||
OK
|
Loading…
Reference in New Issue
Block a user