diff options
| -rw-r--r-- | weed/server/filer_server_handlers_write_upload.go | 10 |
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 { |
