From 20978b1278648c70e4fbeb8ebaf216f3b743519d Mon Sep 17 00:00:00 2001 From: kim <89579420+NyaaaWhatsUpDoc@users.noreply.github.com> Date: Fri, 2 Jun 2023 09:34:52 +0100 Subject: [performance] wrap httpclient response body to ensure drained before close (#1854) Signed-off-by: kim --- vendor/codeberg.org/gruf/go-iotools/close.go | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'vendor/codeberg.org/gruf/go-iotools/close.go') diff --git a/vendor/codeberg.org/gruf/go-iotools/close.go b/vendor/codeberg.org/gruf/go-iotools/close.go index fbed7f33c..3f0ee7780 100644 --- a/vendor/codeberg.org/gruf/go-iotools/close.go +++ b/vendor/codeberg.org/gruf/go-iotools/close.go @@ -17,6 +17,14 @@ func CloserCallback(c io.Closer, cb func()) io.Closer { }) } +func CloserAfterCallback(c io.Closer, cb func()) io.Closer { + return CloserFunc(func() (err error) { + defer func() { err = c.Close() }() + cb() + return + }) +} + // CloseOnce wraps an io.Closer to ensure it only performs the close logic once. func CloseOnce(c io.Closer) io.Closer { return CloserFunc(func() error { -- cgit v1.2.3