aboutsummaryrefslogtreecommitdiffstats
path: root/plumbing/transport/file/common.go
diff options
context:
space:
mode:
authorSantiago M. Mola <santi@mola.io>2016-12-06 11:36:38 +0100
committerGitHub <noreply@github.com>2016-12-06 11:36:38 +0100
commit4b5849db76905830e0124b6b9f4294ee13308e0f (patch)
treebb1761de5af4f442fae36d72ac5d0be941188c05 /plumbing/transport/file/common.go
parent11735c3b3aaa8f789dc10739a4de7ad438196000 (diff)
downloadgo-git-4b5849db76905830e0124b6b9f4294ee13308e0f.tar.gz
transport/internal: error handling fixes and clean up (#160)
* protocol/packp: remove redundant isFlush check on AdvRefs. * protocol/packp: improve AdvRefs documentation. * transport: improve error handling for non-existing repos. * protocol/packp: AdvRefs Decode now returns different errors for empty, but syntactically correct, AdvRefs message (ErrEmptyAdvRefs) and empty input (ErrEmptyInput). * transport/internal/common: read stderr only when needed (ErrEmptyInput). Close the client gracefully. * transport/internal/common: missing stderr on non existing repository does not block. * transport/internal/common: buffer error messages. * transport/file: fix changing binary name, add tests. * transport/file: support changing git-upload-pack and git-receive-pack binary names. * transport/file: add tests for misbehaving servers. * transport/internal/common: remove Stderr field. * transport/internal/common: do not close twice.
Diffstat (limited to 'plumbing/transport/file/common.go')
-rw-r--r--plumbing/transport/file/common.go6
1 files changed, 6 insertions, 0 deletions
diff --git a/plumbing/transport/file/common.go b/plumbing/transport/file/common.go
index 82cbba2..8697121 100644
--- a/plumbing/transport/file/common.go
+++ b/plumbing/transport/file/common.go
@@ -29,6 +29,12 @@ func NewClient(uploadPackBin, receivePackBin string) transport.Client {
}
func (r *runner) Command(cmd string, ep transport.Endpoint) (common.Command, error) {
+ switch cmd {
+ case transport.UploadPackServiceName:
+ cmd = r.UploadPackBin
+ case transport.ReceivePackServiceName:
+ cmd = r.ReceivePackBin
+ }
return &command{cmd: exec.Command(cmd, ep.Path)}, nil
}