Update the preprocess-function to avoid adding trailing new-lines (issue 14902)

*This is a follow-up to PR 14886, which "broke" this.*

In addition to fixing the issue, using an Array and `join`-ing it at the end may also be a tiny bit more efficient than using a growing string.
This commit is contained in:
Jonas Jenwald 2022-05-11 12:32:41 +02:00
parent 38c82357b2
commit 527251d62b

View File

@ -57,7 +57,7 @@ function preprocess(inFilename, outFilename, defines) {
} }
const lines = content.split("\n"), const lines = content.split("\n"),
totalLines = lines.length; totalLines = lines.length;
let out = ""; const out = [];
let i = 0; let i = 0;
function readLine() { function readLine() {
if (i < totalLines) { if (i < totalLines) {
@ -69,7 +69,7 @@ function preprocess(inFilename, outFilename, defines) {
typeof outFilename === "function" typeof outFilename === "function"
? outFilename ? outFilename
: function (line) { : function (line) {
out += line + "\n"; out.push(line);
}; };
function evaluateCondition(code) { function evaluateCondition(code) {
if (!code || !code.trim()) { if (!code || !code.trim()) {
@ -210,7 +210,7 @@ function preprocess(inFilename, outFilename, defines) {
); );
} }
if (typeof outFilename !== "function") { if (typeof outFilename !== "function") {
fs.writeFileSync(outFilename, out); fs.writeFileSync(outFilename, out.join("\n"));
} }
} }
exports.preprocess = preprocess; exports.preprocess = preprocess;