From 23625d3c6688eb9727e5e98771256a18ffd1e1bb Mon Sep 17 00:00:00 2001 From: Uzlopak Date: Sat, 24 Dec 2022 09:42:19 +0100 Subject: [PATCH] (v3.x) perf: only check for isEssence once in RegExp for content-type-parser (#4481) --- lib/contentTypeParser.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/contentTypeParser.js b/lib/contentTypeParser.js index 7b452a8e7e..a36d8ca8bf 100644 --- a/lib/contentTypeParser.js +++ b/lib/contentTypeParser.js @@ -72,6 +72,7 @@ ContentTypeParser.prototype.add = function (contentType, opts, parserFn) { if (contentTypeIsString) { this.parserList.unshift(new ParserListItem(contentType)) } else { + contentType.isEssence = contentType.source.indexOf(';') === -1 this.parserRegExpList.unshift(contentType) } this.customParsers.set(contentType.toString(), parser) @@ -395,7 +396,7 @@ function compareContentType (contentType, parserListItem) { } function compareRegExpContentType (contentType, essenceMIMEType, regexp) { - if (regexp.source.indexOf(';') === -1) { + if (regexp.isEssence) { // we do essence check return regexp.test(essenceMIMEType) } else {