}
method _build_modestr {
- return _mode_str($self->mode);
+ # XXX The POSIX constants make win32 sad :(
+ return eval { _mode_str($self->mode) } || '?rwxrwxrwx';
}
# via gitweb.pm circa line 1305
use List::MoreUtils qw/any zip/;
use DateTime;
use Encode qw/decode/;
- use I18N::Langinfo qw/langinfo CODESET/;
+# use I18N::Langinfo qw/langinfo CODESET/;
use Gitalist::Git::Object::Blob;
use Gitalist::Git::Object::Tree;
use Gitalist::Git::Object::Commit;
}
method _build_owner {
- my ($gecos, $name) = map { decode(langinfo(CODESET), $_) } (getpwuid $self->path->stat->uid)[6,0];
+ # XXX No I18N::Langinfo & getpwuid make win32 sad :(
+ # my ($gecos, $name) = map { decode(langinfo(CODESET), $_) } (getpwuid $self->path->stat->uid)[6,0];
+ my ($gecos, $name) = do {
+ local $@;
+ my($g,$n) = eval { (getpwuid $self->path->stat->uid)[6,0] };
+ !$@ ? ($g,$n) : qw(OwenEr GroUp);
+ };
$gecos =~ s/,+$//;
return length($gecos) ? $gecos : $name;
}