Merge pull request #14320 from webpack/perf/write-strings-cache

write short strings more efficient to cache
This commit is contained in:
Tobias Koppers 2021-09-24 15:23:37 +02:00 committed by GitHub
commit 91480cfbb1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 11 additions and 2 deletions

View File

@ -299,12 +299,21 @@ class BinaryMiddleware extends SerializerMiddleware {
writeU8(STRING_HEADER);
writeU32(len);
currentBuffer.write(thing, currentPosition);
currentPosition += len;
} else if (len >= 70) {
allocate(len + HEADER_SIZE);
writeU8(SHORT_STRING_HEADER | len);
currentBuffer.write(thing, currentPosition, "latin1");
currentPosition += len;
} else {
allocate(len + HEADER_SIZE);
writeU8(SHORT_STRING_HEADER | len);
currentBuffer.write(thing, currentPosition, "latin1");
for (let i = 0; i < len; i++) {
currentBuffer[currentPosition++] = thing.charCodeAt(i);
}
}
currentPosition += len;
break;
}
case "number": {