summaryrefslogtreecommitdiff
path: root/ext/standard/tests/dir/bug73877.phpt
blob: 2fa6c90f027727d753b0a4190da4e2ea333cbe0e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
--TEST--
Bug #73877 readlink() returns garbage for UTF-8 paths
File type functions
--SKIPIF--
<?php
if (substr(PHP_OS, 0, 3) != 'WIN') {
    die('skip only for Windows');
}
?>
--FILE--
<?php

$base = dirname(__FILE__) . DIRECTORY_SEPARATOR . "bug73877";
$dir0 = $base . DIRECTORY_SEPARATOR . "bug73877";
$dir1 = $base . DIRECTORY_SEPARATOR . "Серёжка";
$junk0 = $base . DIRECTORY_SEPARATOR . "Серёжка2";

mkdir($base);
mkdir($dir0);
mkdir($dir1);
`mklink /J $junk0 $dir0`;

var_dump(
	readlink($dir0),
	readlink($dir1),
	readlink($junk0),
	strlen(readlink($dir0)) === strlen(readlink($junk0))
);

?>
--CLEAN--
<?php

$base = dirname(__FILE__) . DIRECTORY_SEPARATOR . "bug73877";
$dir0 = $base . DIRECTORY_SEPARATOR . "bug73877";
$dir1 = $base . DIRECTORY_SEPARATOR . "Серёжка";
$junk0 = $base . DIRECTORY_SEPARATOR . "Серёжка2";

rmdir($junk0);
rmdir($dir0);
rmdir($dir1);
rmdir($base);

?>
--EXPECTF--
string(%d) "%sbug73877"
string(%d) "%sСерёжка"
string(%d) "%sbug73877"
bool(true)