aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author柏杰 <2063169+bai-jie@users.noreply.github.com>2023-06-11 14:15:27 +0800
committerGitHub <noreply@github.com>2023-06-10 23:15:27 -0700
commit68feffa4e6f02795a90c4b42c8b9f6f85bea9745 (patch)
tree48ba58d2a2937d2269a88a13c8f1134e87e0e9f8
parent5ee04d20fac54daf3ceba7469adce824f30dc678 (diff)
downloadseaweedfs-68feffa4e6f02795a90c4b42c8b9f6f85bea9745.tar.xz
seaweedfs-68feffa4e6f02795a90c4b42c8b9f6f85bea9745.zip
avoid overwriting non-nil uploadReaderToChunks.uploadErr with nil value (#4560)
-rw-r--r--weed/server/filer_server_handlers_write_upload.go10
1 files 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 {