Revert "Optimize parsing of OSC_STRING to minimize string concatenation."

This reverts commit 03115639a9.
This commit is contained in:
Per Bothner
2018-12-09 13:11:17 -08:00
parent 03115639a9
commit 30a667c3be
+6 -15
View File
@@ -439,11 +439,7 @@ export class EscapeSequenceParser extends Disposable implements IEscapeSequenceP
}
// normal transition & action lookup
transition = (code < 0xa0
? (table[currentState << 8 | code])
: currentState === ParserState.OSC_STRING
? (ParserAction.OSC_PUT << 4) | ParserState.OSC_STRING
: DEFAULT_TRANSITION);
transition = (code < 0xa0) ? (table[currentState << 8 | code]) : DEFAULT_TRANSITION;
switch (transition >> 4) {
case ParserAction.PRINT:
print = (~print) ? print : i;
@@ -475,6 +471,10 @@ export class EscapeSequenceParser extends Disposable implements IEscapeSequenceP
case ParserState.GROUND:
print = (~print) ? print : i;
break;
case ParserState.OSC_STRING:
osc += String.fromCharCode(code);
transition |= ParserState.OSC_STRING;
break;
case ParserState.CSI_IGNORE:
transition |= ParserState.CSI_IGNORE;
break;
@@ -570,16 +570,7 @@ export class EscapeSequenceParser extends Disposable implements IEscapeSequenceP
osc = '';
break;
case ParserAction.OSC_PUT:
for (let j = i + 1; ; j++) {
if (j >= l
|| ((code = data.charCodeAt(j)) <= 0x9f
&& (table[ParserState.OSC_STRING << 8 | code] >> 4
!== ParserAction.OSC_PUT))) {
osc += data.substring(i, j);
i = j - 1;
break;
}
}
osc += data.charAt(i);
break;
case ParserAction.OSC_END:
if (osc && code !== 0x18 && code !== 0x1a) {