diff --git a/packages/busboy/src/middleware.ts b/packages/busboy/src/middleware.ts index 283fcd0f02d..2161ff31369 100644 --- a/packages/busboy/src/middleware.ts +++ b/packages/busboy/src/middleware.ts @@ -363,12 +363,12 @@ export class UploadMiddleware implements IMiddleware { 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({ @@ -395,17 +395,17 @@ export class UploadMiddleware implements IMiddleware { }); 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); diff --git a/packages/busboy/test/koa.test.ts b/packages/busboy/test/koa.test.ts index 505bcf837ec..b737dc26e7b 100644 --- a/packages/busboy/test/koa.test.ts +++ b/packages/busboy/test/koa.test.ts @@ -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({