Skip to content

Commit 0863ab9

Browse files
committed
Merge branch 'PHP-8.1'
* PHP-8.1: libmagic: Update patch fileinfo: Fixed bug #78987 High memory usage during encoding detection
2 parents a51869a + 31c908a commit 0863ab9

File tree

1 file changed

+40
-0
lines changed

1 file changed

+40
-0
lines changed

ext/fileinfo/tests/bug78987.phpt

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
--TEST--
2+
Bug #78987 High memory usage during encoding detection
3+
--SKIPIF--
4+
<?php require_once(__DIR__ . '/skipif.inc'); ?>
5+
--INI--
6+
memory_limit=512M
7+
--FILE--
8+
<?php
9+
$finfo = new finfo(FILEINFO_MIME_TYPE);
10+
$minSize = 128 * 1024;
11+
$maxSize = 16 * 1024 * 1024;
12+
13+
$map = array(
14+
131072 => 2097152,
15+
262144 => 2097152,
16+
524288 => 2097152,
17+
1048576 => 4194304,
18+
2097152 => 6295552,
19+
4194304 => 10493952,
20+
8388608 => 16785408,
21+
16777216 => 29368320,
22+
);
23+
for($size = $minSize; $size <= $maxSize; $size *= 2) {
24+
$content = str_repeat('0', $size);
25+
26+
$finfo->buffer($content);
27+
28+
$m = memory_get_peak_usage(true);
29+
printf("%-8d => %s\n", $size, $m <= $map[$size] ? "ok" : "$m");
30+
}
31+
?>
32+
--EXPECT--
33+
131072 => ok
34+
262144 => ok
35+
524288 => ok
36+
1048576 => ok
37+
2097152 => ok
38+
4194304 => ok
39+
8388608 => ok
40+
16777216 => ok

0 commit comments

Comments
 (0)