From: Alex Riesen Date: Mon, 22 Jan 2007 16:16:05 +0000 (+0100) Subject: Force Activestate Perl to tie git command pipe handle to a handle class X-Git-Tag: v1.5.0-rc3~86 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=bed118d6bb6dee92180469466dfa265265678dd4;p=git.git Force Activestate Perl to tie git command pipe handle to a handle class Otherwise it tries to tie it to a scalar and complains about missing method. Dunno why, may be ActiveState brokenness again. Signed-off-by: Alex Riesen Acked-by: Petr Baudis Signed-off-by: Junio C Hamano --- diff --git a/perl/Git.pm b/perl/Git.pm index 58414e3ec..2f6b59a43 100644 --- a/perl/Git.pm +++ b/perl/Git.pm @@ -742,7 +742,13 @@ sub _command_common_pipe { # warn 'ignoring STDERR option - running w/ ActiveState'; $direction eq '-|' or die 'input pipe for ActiveState not implemented'; - tie ($fh, 'Git::activestate_pipe', $cmd, @args); + # the strange construction with *ACPIPE is just to + # explain the tie below that we want to bind to + # a handle class, not scalar. It is not known if + # it is something specific to ActiveState Perl or + # just a Perl quirk. + tie (*ACPIPE, 'Git::activestate_pipe', $cmd, @args); + $fh = *ACPIPE; } else { my $pid = open($fh, $direction);