From 66feee7cfffc18c10b082a6918d773793951e091 Mon Sep 17 00:00:00 2001 From: Qiu Jian Date: Fri, 21 Mar 2025 17:08:46 +0800 Subject: [PATCH] fix: streamutil callback add param of saved once --- util/streamutils/streamutils.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/util/streamutils/streamutils.go b/util/streamutils/streamutils.go index 5777480..356f4d2 100644 --- a/util/streamutils/streamutils.go +++ b/util/streamutils/streamutils.go @@ -73,7 +73,7 @@ func (s *sXZReadAheadReader) Read(buf []byte) (int, error) { } } -func StreamPipe(upstream io.Reader, writer io.Writer, CalChecksum bool, callback func(saved int64)) (*SStreamProperty, error) { +func StreamPipe(upstream io.Reader, writer io.Writer, CalChecksum bool, callback func(savedTotal int64, savedOnce int64)) (*SStreamProperty, error) { sp := SStreamProperty{} var md5sum hash.Hash @@ -103,6 +103,9 @@ func StreamPipe(upstream io.Reader, writer io.Writer, CalChecksum bool, callback n, err := reader.Read(buf) if n > 0 { sp.Size += int64(n) + if callback != nil { + callback(sp.Size, int64(n)) + } if CalChecksum { md5sum.Write(buf[:n]) } @@ -114,9 +117,6 @@ func StreamPipe(upstream io.Reader, writer io.Writer, CalChecksum bool, callback } offset += m } - if callback != nil { - callback(sp.Size) - } } if err != nil { if err == io.EOF {