소스 검색

@uppy/aws-s3-multipart: fix crash on pause/resume (#4581)

Co-authored-by: Antoine du Hamel <duhamelantoine1995@gmail.com>
Merlijn Vos 1 년 전
부모
커밋
8955081b06
2개의 변경된 파일3개의 추가작업 그리고 1개의 파일을 삭제
  1. 1 0
      packages/@uppy/aws-s3-multipart/src/MultipartUploader.js
  2. 2 1
      packages/@uppy/aws-s3-multipart/src/index.js

+ 1 - 0
packages/@uppy/aws-s3-multipart/src/MultipartUploader.js

@@ -136,6 +136,7 @@ class MultipartUploader {
           // setAsUploaded is called by listPart, to keep up-to-date the
           // quantity of data that is left to actually upload.
           this.#chunks[j].setAsUploaded = () => {
+            this.#chunks[j] = null
             this.#chunkState[j].uploaded = size
           }
         }

+ 2 - 1
packages/@uppy/aws-s3-multipart/src/index.js

@@ -318,7 +318,8 @@ class HTTPCommunicationQueue {
           if (alreadyUploadedInfo == null) {
             return this.uploadChunk(file, partNumber, chunk, signal)
           }
-          chunk.setAsUploaded?.()
+          // Already uploaded chunks are set to null. If we are restoring the upload, we need to mark it as already uploaded.
+          chunk?.setAsUploaded?.()
           return { PartNumber: partNumber, ETag: alreadyUploadedInfo.ETag }
         }),
     )