🕷 uncompression error handling
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -1,6 +1,7 @@
|
|||||||
.idea/
|
.idea/
|
||||||
.DS_Store
|
.DS_Store
|
||||||
comics/
|
comics/
|
||||||
|
userdata/
|
||||||
dist/
|
dist/
|
||||||
server/
|
server/
|
||||||
node_modules/
|
node_modules/
|
||||||
|
|||||||
@@ -42,22 +42,19 @@ export const unrar = async (
|
|||||||
const extractor = await unrarer.createExtractorFromData({ data: fileBuffer });
|
const extractor = await unrarer.createExtractorFromData({ data: fileBuffer });
|
||||||
switch (extractionOptions.extractTarget) {
|
switch (extractionOptions.extractTarget) {
|
||||||
case "cover":
|
case "cover":
|
||||||
debugger;
|
|
||||||
const list = extractor.getFileList();
|
|
||||||
const fileHeaders = [...list.fileHeaders];
|
|
||||||
const file = extractor.extract({ files: [fileHeaders[0].name] });
|
|
||||||
const extractedFile = [...file.files][0];
|
|
||||||
const fileArrayBuffer = extractedFile.extraction;
|
|
||||||
|
|
||||||
logger.info(`Attempting to write ${extractedFile.fileHeader.name}`);
|
|
||||||
|
|
||||||
return new Promise(async (resolve, reject) => {
|
return new Promise(async (resolve, reject) => {
|
||||||
try {
|
try {
|
||||||
|
const list = extractor.getFileList();
|
||||||
|
const fileHeaders = [...list.fileHeaders];
|
||||||
|
const file = extractor.extract({ files: [fileHeaders[0].name] });
|
||||||
|
const extractedFile = [...file.files][0];
|
||||||
|
const fileArrayBuffer = extractedFile.extraction;
|
||||||
const fileName = explodePath(extractedFile.fileHeader.name).fileName;
|
const fileName = explodePath(extractedFile.fileHeader.name).fileName;
|
||||||
if (
|
if (
|
||||||
fileName !== "" &&
|
fileName !== "" &&
|
||||||
extractedFile.fileHeader.flags.directory === false
|
extractedFile.fileHeader.flags.directory === false
|
||||||
) {
|
) {
|
||||||
|
logger.info(`Attempting to write ${extractedFile.fileHeader.name}`);
|
||||||
await writeFile(paths.targetPath + "/" + fileName, fileArrayBuffer);
|
await writeFile(paths.targetPath + "/" + fileName, fileArrayBuffer);
|
||||||
}
|
}
|
||||||
resolve({
|
resolve({
|
||||||
|
|||||||
Reference in New Issue
Block a user