dont run inf loop check on ns1 scripts

This commit is contained in:
Olivier Gagnon
2021-10-29 01:23:15 -04:00
parent 2926ee0fc0
commit d99d3fc222
4 changed files with 33 additions and 28 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -234,7 +234,6 @@ export function checkInfiniteLoop(code: string): number {
{
WhileStatement: (node: acorn.Node, st: any, walkDeeper: walk.WalkerCallback<any>) => {
if (nodeHasTrueTest((node as any).test) && !hasAwait(node)) {
console.log(node);
missingAwaitLine = (code.slice(0, node.start).match(/\n/g) || []).length + 1;
} else {
(node as any).body && walkDeeper((node as any).body, st);

View File

@ -227,11 +227,9 @@ export function Root(props: IProps): React.ReactElement {
setFilename(event.target.value);
}
function updateCode(newCode?: string): void {
if (newCode === undefined) return;
lastCode = newCode;
if (editorRef.current !== null) {
lastPosition = editorRef.current.getPosition();
function infLoop(newCode: string): void {
if (editorRef.current === null) return;
if (!filename.endsWith(".ns") && !filename.endsWith(".js")) return;
const awaitWarning = checkInfiniteLoop(newCode);
if (awaitWarning !== -1) {
const newDecorations = editorRef.current.deltaDecorations(decorations, [
@ -257,6 +255,14 @@ export function Root(props: IProps): React.ReactElement {
setDecorations(newDecorations);
}
}
function updateCode(newCode?: string): void {
if (newCode === undefined) return;
lastCode = newCode;
if (editorRef.current !== null) {
lastPosition = editorRef.current.getPosition();
infLoop(newCode);
}
setCode(newCode);
updateRAM(newCode);
}