@zip.js/zip.js 2.5.22 → 2.5.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -8946,10 +8946,10 @@
8946
8946
  let releaseLockWriter;
8947
8947
  let resolveLockCurrentFileEntry;
8948
8948
  let writingBufferedData;
8949
+ let fileWriter;
8949
8950
  files.set(name, fileEntry);
8950
8951
  try {
8951
8952
  let lockPreviousFileEntry;
8952
- let fileWriter;
8953
8953
  if (options.keepOrder) {
8954
8954
  lockPreviousFileEntry = previousFileEntry && previousFileEntry.lock;
8955
8955
  }
@@ -8965,7 +8965,7 @@
8965
8965
  }
8966
8966
  fileWriter = writer;
8967
8967
  }
8968
- fileEntry = await createFileEntry(reader, fileWriter.writable, zipWriter.config, options);
8968
+ fileEntry = await createFileEntry(reader, fileEntry, fileWriter.writable, zipWriter.config, options);
8969
8969
  files.set(name, fileEntry);
8970
8970
  fileEntry.filename = name;
8971
8971
  if (bufferedWrite) {
@@ -9006,9 +9006,7 @@
9006
9006
  } catch (error) {
9007
9007
  if ((bufferedWrite && writingBufferedData) || (!bufferedWrite && fileEntry.dataWritten)) {
9008
9008
  error.corruptedEntry = zipWriter.hasCorruptedEntries = true;
9009
- if (fileEntry.uncompressedSize) {
9010
- zipWriter.offset += fileEntry.uncompressedSize;
9011
- }
9009
+ zipWriter.offset += fileWriter.size;
9012
9010
  }
9013
9011
  files.delete(name);
9014
9012
  throw error;
@@ -9029,7 +9027,7 @@
9029
9027
  }
9030
9028
  }
9031
9029
 
9032
- async function createFileEntry(reader, writable, config, options) {
9030
+ async function createFileEntry(reader, pendingFileEntry, writable, config, options) {
9033
9031
  const {
9034
9032
  rawFilename,
9035
9033
  lastAccessDate,
@@ -9179,7 +9177,7 @@
9179
9177
  let compressedSize = 0;
9180
9178
  if (reader) {
9181
9179
  await writeUint8Array(writable, localHeaderArray);
9182
- fileEntry.dataWritten = true;
9180
+ fileEntry.dataWritten = pendingFileEntry.dataWritten = true;
9183
9181
  const size = () => reader.size;
9184
9182
  const readable = reader.readable;
9185
9183
  readable.size = size;
@@ -9207,7 +9205,7 @@
9207
9205
  compressedSize = result.length;
9208
9206
  } else {
9209
9207
  await writeUint8Array(writable, localHeaderArray);
9210
- fileEntry.dataWritten = true;
9208
+ fileEntry.dataWritten = pendingFileEntry.dataWritten = true;
9211
9209
  }
9212
9210
  let dataDescriptorArray = new Uint8Array();
9213
9211
  let dataDescriptorView, dataDescriptorOffset = 0;