2011/8/26 Andjelkovic Toni RBS sIT <[email protected]>:
> The test fails because readdir() on Cygwin returns a scalar containing UTF8,
> but it does not set the scalar's UTF-8 flag. It helps to set the flag
> explicitely:
Yes, on cygwin >= 1.7 only.
I skipped that test on my cygwin github branch for CORE in
cpan/Win32/t/Unicode.t
> --- t/Unicode.t.bak 2011-08-26 16:37:11.483644100 +0200
> +++ t/Unicode.t 2011-08-26 16:45:10.802566000 +0200
> @@ -1,5 +1,6 @@
> use strict;
> use Test;
> +use Encode;
> use Cwd qw(cwd);
> use Win32;
>
> @@ -48,6 +49,7 @@
> ok(opendir(my $dh, Win32::GetANSIPathName($dir)));
> while ($_ = readdir($dh)) {
> next if /^\./;
> + Encode::_utf8_on($_) if $^O eq "cygwin";
> ok($file, Win32::GetLongPathName("$dir\\$_"));
> }
> closedir($dh);
--
Reini Urban
http://phpwiki.org/ http://murbreak.at/