Subject: | t/arch_check.t broken on Windows |
The problem is that Win32::GetShortPathName() returns undef if the short
name does not exist. Instead it should just continue to use the long
name instead.
Only marked as important because the failure shows up in 5.10.1 RC0.
--- perl/5.10/lib/ExtUtils/MM_Win32.pm.~1~ Wed Jul 8 12:52:06 2009
+++ perl/5.10/lib/ExtUtils/MM_Win32.pm Wed Jul 8 12:52:06 2009
@@ -419,9 +419,14 @@
return 1 unless $self->can_load_xs;
require Win32;
- return $self->SUPER::arch_check( map { lc
Win32::GetShortPathName($_) } @_);
+ return $self->SUPER::arch_check( map { lc _get_short_path_name($_)
} @_);
}
+sub _get_short_path_name {
+ my $file = shift;
+ my $short = Win32::GetShortPathName($file);
+ return defined $short ? $short : $file;
+}
=item oneliner
End of Patch.