Skip to content

Commit

Permalink
fix: EPIPE error
Browse files Browse the repository at this point in the history
  • Loading branch information
czy88840616 committed Sep 18, 2024
1 parent ffc1b14 commit deefb53
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 12 deletions.
12 changes: 6 additions & 6 deletions packages/busboy/src/middleware.ts
Original file line number Diff line number Diff line change
Expand Up @@ -363,12 +363,12 @@ export class UploadMiddleware implements IMiddleware<any, any> {
const { filename, encoding, mimeType } = info;
const ext = this.checkAndGetExt(filename, currentContextWhiteListMap);
if (!ext) {
fileReadable.emit('error', new MultipartInvalidFilenameError(filename));
fileReadable.destroy(new MultipartInvalidFilenameError(filename));
return;
}

file.once('limit', () => {
fileReadable.emit('error', new MultipartFileSizeLimitError(filename));
fileReadable.destroy(new MultipartFileSizeLimitError(filename));
});

fileReadable.push({
Expand All @@ -395,17 +395,17 @@ export class UploadMiddleware implements IMiddleware<any, any> {
});

bb.on('error', (err: Error) => {
fileReadable.emit('error', new MultipartError(err));
fileReadable.destroy(new MultipartError(err));
});

bb.on('partsLimit', () => {
fileReadable.emit('error', new MultipartPartsLimitError());
fileReadable.destroy(new MultipartPartsLimitError());
});
bb.on('filesLimit', () => {
fileReadable.emit('error', new MultipartFileLimitError());
fileReadable.destroy(new MultipartFileLimitError());
});
bb.on('fieldsLimit', () => {
fieldReadable.emit('error', new MultipartFieldsLimitError());
fieldReadable.destroy(new MultipartFieldsLimitError());
});
req.pipe(bb);

Expand Down
7 changes: 1 addition & 6 deletions packages/busboy/test/koa.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -448,12 +448,7 @@ describe('test/koa.test.ts', function () {
} catch (err) {
console.error(err.message);
}

const stat = statSync(join(resourceDir, `${files[0].fieldName}.pdf`));
return {
size: stat.size,
files,
}
return 'ok';
}
}
const app = await createLightApp({
Expand Down

0 comments on commit deefb53

Please sign in to comment.