From 709c52301ca42708e8bd1a39f7c85b2f5467ecec Mon Sep 17 00:00:00 2001 From: Trim21 Date: Thu, 15 Sep 2022 13:19:25 +0800 Subject: [PATCH] fix `ctx.SendStream(io.Reader)` huge memory usage (#2091) * Update ctx.go * remove content-length from test --- ctx.go | 1 - ctx_test.go | 5 ----- 2 files changed, 6 deletions(-) diff --git a/ctx.go b/ctx.go index 966957e1..108db09c 100644 --- a/ctx.go +++ b/ctx.go @@ -1545,7 +1545,6 @@ func (c *Ctx) SendStream(stream io.Reader, size ...int) error { c.fasthttp.Response.SetBodyStream(stream, size[0]) } else { c.fasthttp.Response.SetBodyStream(stream, -1) - c.setCanonical(HeaderContentLength, strconv.Itoa(len(c.fasthttp.Response.Body()))) } return nil diff --git a/ctx_test.go b/ctx_test.go index caf03787..8d12d4b5 100644 --- a/ctx_test.go +++ b/ctx_test.go @@ -3302,11 +3302,6 @@ func Test_Ctx_SendStream(t *testing.T) { c.SendStream(bufio.NewReader(bytes.NewReader([]byte("Hello bufio")))) utils.AssertEqual(t, "Hello bufio", string(c.Response().Body())) - - file, err := os.Open("./.github/index.html") - utils.AssertEqual(t, nil, err) - c.SendStream(bufio.NewReader(file)) - utils.AssertEqual(t, true, c.Response().Header.ContentLength() > 200) } // go test -run Test_Ctx_Set