return;
}
pipe(my ($out_r, $out_w)) or $self->fail("pipe failed: $!");
- my $rdr = { 0 => $out_r };
+ my $rdr = { 0 => $out_r, pgid => 0 };
my $gd = $self->{git_dir};
if ($gd =~ s!/([^/]+/[^/]+)\z!/!) {
$rdr->{-C} = $gd;
return; # unrecoverable error
}
}
- \substr($$rbuf, 0, $len, '');
+ my $no_pad = substr($$rbuf, 0, $len, '');
+ \$no_pad;
}
sub my_readline ($$) {
sub DESTROY { cleanup(@_) }
sub local_nick ($) {
- my ($self) = @_;
- my $ret = '???';
# don't show full FS path, basename should be OK:
- if ($self->{git_dir} =~ m!/([^/]+)(?:/*\.git/*)?\z!) {
- $ret = "$1.git";
- }
- wantarray ? ($ret) : $ret;
+ $_[0]->{git_dir} =~ m!/([^/]+?)(?:/*\.git/*)?\z! ? "$1.git" : '???';
}
sub host_prefix_url ($$) {
if (my $urls = $self->{cgit_url}) {
return map { host_prefix_url($env, $_) } @$urls;
}
- local_nick($self);
+ (local_nick($self));
}
sub cat_async_begin {