Diff
1diff --git a/pkg/web/git.go b/pkg/web/git.go
2index 6723ac6f093304f413d0753a88fd61244dacc597..5a15ed2eda6e2f29ff156971ba0204fce3c504cb 100644
3--- a/pkg/web/git.go
4+++ b/pkg/web/git.go
5@@ -390,10 +390,8 @@ func serviceRpc(w http.ResponseWriter, r *http.Request) {
6
7 version := r.Header.Get("Git-Protocol")
8
9- var stdout bytes.Buffer
10 cmd := git.ServiceCommand{
11- Stdout: &stdout,
12- Dir: dir,
13+ Dir: dir,
14 }
15
16 switch service {
17@@ -438,7 +436,7 @@ func serviceRpc(w http.ResponseWriter, r *http.Request) {
18 }
19
20 cmd.Stdin = reader
21- cmd.Stdout = &flushResponseWriter{w}
22+ cmd.Stdout = w
23
24 if err := service.Handler(ctx, cmd); err != nil {
25 logger.Errorf("failed to handle service: %v", err)
26@@ -452,39 +450,6 @@ func serviceRpc(w http.ResponseWriter, r *http.Request) {
27 }
28 }
29
30-// Handle buffered output
31-// Useful when using proxies
32-type flushResponseWriter struct {
33- http.ResponseWriter
34-}
35-
36-func (f *flushResponseWriter) ReadFrom(r io.Reader) (int64, error) {
37- flusher := http.NewResponseController(f.ResponseWriter)
38-
39- var n int64
40- p := make([]byte, 1024)
41- for {
42- nRead, err := r.Read(p)
43- if err == io.EOF {
44- break
45- }
46- nWrite, err := f.ResponseWriter.Write(p[:nRead])
47- if err != nil {
48- return n, err
49- }
50- if nRead != nWrite {
51- return n, err
52- }
53- n += int64(nRead)
54- // ResponseWriter must support http.Flusher to handle buffered output.
55- if err := flusher.Flush(); err != nil {
56- return n, fmt.Errorf("%w: error while flush", err)
57- }
58- }
59-
60- return n, nil
61-}
62-
63 func getInfoRefs(w http.ResponseWriter, r *http.Request) {
64 ctx := r.Context()
65 cfg := config.FromContext(ctx)
66diff --git a/pkg/web/server.go b/pkg/web/server.go
67index 682175150eadff661ac8bc44a28071c2857e2093..8167af260cd7a69fe82b6cb7e69d2b6293c62ce2 100644
68--- a/pkg/web/server.go
69+++ b/pkg/web/server.go
70@@ -27,7 +27,6 @@ func NewRouter(ctx context.Context) http.Handler {
71 // Adds context to the request
72 h := NewLoggingMiddleware(router, logger)
73 h = NewContextHandler(ctx)(h)
74- h = handlers.CompressHandler(h)
75 h = handlers.RecoveryHandler()(h)
76
77 cfg := config.FromContext(ctx)