From 04ed432a01da40fcebaa40b873639b886f24f2c1 Mon Sep 17 00:00:00 2001 From: Richard Hansen Date: Tue, 23 Nov 2021 02:59:06 -0500 Subject: [PATCH] Changeset: Use `clear()` to initialize This avoids some duplicate code and it helps ensure that `clear()` works properly. --- src/static/js/Changeset.js | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/static/js/Changeset.js b/src/static/js/Changeset.js index 38d6b9293..07fdee78f 100644 --- a/src/static/js/Changeset.js +++ b/src/static/js/Changeset.js @@ -323,6 +323,11 @@ class OpAssembler { class MergingOpAssembler { constructor() { this._assem = new OpAssembler(); + this.clear(); + } + + clear() { + this._assem.clear(); this._bufOp = new Op(); // If we get, for example, insertions [xxx\n,yyy], those don't merge, but if we get // [xxx\n,yyy,zzz\n], that merges to [xxx\nyyyzzz\n]. This variable stores the length of yyy and @@ -330,11 +335,6 @@ class MergingOpAssembler { this._bufOpAdditionalCharsAfterNewline = 0; } - clear() { - this._assem.clear(); - clearOp(this._bufOp); - } - _flush(isEndDocument) { if (!this._bufOp.opcode) return; if (isEndDocument && this._bufOp.opcode === '=' && !this._bufOp.attribs) { @@ -431,8 +431,7 @@ class SmartOpAssembler { this._plusAssem = new MergingOpAssembler(); this._keepAssem = new MergingOpAssembler(); this._assem = exports.stringAssembler(); - this._lastOpcode = ''; - this._lengthChange = 0; + this.clear(); } clear() { @@ -440,6 +439,7 @@ class SmartOpAssembler { this._plusAssem.clear(); this._keepAssem.clear(); this._assem.clear(); + this._lastOpcode = ''; this._lengthChange = 0; }