From 68feffa4e6f02795a90c4b42c8b9f6f85bea9745 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9F=8F=E6=9D=B0?= <2063169+bai-jie@users.noreply.github.com> Date: Sun, 11 Jun 2023 14:15:27 +0800 Subject: [PATCH] avoid overwriting non-nil uploadReaderToChunks.uploadErr with nil value (#4560) --- weed/server/filer_server_handlers_write_upload.go | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/weed/server/filer_server_handlers_write_upload.go b/weed/server/filer_server_handlers_write_upload.go index 6b4a820e6..c47ed223b 100644 --- a/weed/server/filer_server_handlers_write_upload.go +++ b/weed/server/filer_server_handlers_write_upload.go @@ -70,9 +70,13 @@ func (fs *FilerServer) uploadReaderToChunks(w http.ResponseWriter, r *http.Reque if err != nil || dataSize == 0 { bufPool.Put(bytesBuffer) <-bytesBufferLimitChan - uploadErrLock.Lock() - uploadErr = err - uploadErrLock.Unlock() + if err != nil { + uploadErrLock.Lock() + if uploadErr == nil { + uploadErr = err + } + uploadErrLock.Unlock() + } break } if chunkOffset == 0 && !isAppend {