Skip to content

Commit 4b9828c

Browse files
committed
fix: classic playground
1 parent 3d02d14 commit 4b9828c

1 file changed

Lines changed: 42 additions & 40 deletions

File tree

src/classic/worker.mjs

Lines changed: 42 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,9 @@ addEventListener('message', ({ data }) => {
4242
// Note: If you're reading this, you should try our new inspector that supports real debugger
4343
// https://engine262.js.org/next.html
4444
debugger;
45-
agent.resumeEvaluate({});
45+
setTimeout(() => {
46+
agent.resumeEvaluate({});
47+
}, 100);
4648
},
4749
hostHooks: {
4850
HostPromiseRejectionTrackers: new Set([
@@ -94,49 +96,49 @@ addEventListener('message', ({ data }) => {
9496
});
9597
}
9698
})
99+
});
97100

98-
postMessage({
99-
type: 'console',
100-
value: {
101-
method: 'clear',
102-
values: [],
103-
},
104-
});
105-
106-
if (state.get('features').has('test262-harness')) {
107-
createTest262Intrinsics(realm, false, console.log);
108-
importBundledTest262Harness(realm);
109-
boostTest262Harness(realm);
110-
}
101+
postMessage({
102+
type: 'console',
103+
value: {
104+
method: 'clear',
105+
values: [],
106+
},
107+
});
111108

112-
let result;
113-
function handleResult(/** @type {import('../../lib/engine262.mjs').ValueCompletion} */ completion) {
114-
result = completion;
115-
if (result instanceof AbruptCompletion) {
116-
postMessage({
117-
type: 'console',
118-
value: {
119-
method: 'error',
120-
values: [inspect(result)],
121-
},
122-
});
123-
}
109+
if (state.get('features').has('test262-harness')) {
110+
createTest262Intrinsics(realm, false, console.log);
111+
importBundledTest262Harness(realm);
112+
boostTest262Harness(realm);
113+
}
124114

125-
for (const promise of promises) {
126-
postMessage({
127-
type: 'unhandledRejection',
128-
// eslint-disable-next-line no-use-before-define
129-
value: inspect(promise.PromiseResult),
130-
});
131-
}
115+
let result;
116+
function handleResult(/** @type {import('../../lib/engine262.mjs').ValueCompletion} */ completion) {
117+
result = completion;
118+
if (result instanceof AbruptCompletion) {
119+
postMessage({
120+
type: 'console',
121+
value: {
122+
method: 'error',
123+
values: [inspect(result)],
124+
},
125+
});
132126
}
133-
if (state.get('mode') === 'script') {
134-
result = realm.evaluateScript(code, { specifier: 'code.js' }, handleResult);
135-
} else {
136-
result = realm.evaluateModule(code, 'code.mjs', handleResult);
127+
128+
for (const promise of promises) {
129+
postMessage({
130+
type: 'unhandledRejection',
131+
// eslint-disable-next-line no-use-before-define
132+
value: inspect(promise.PromiseResult),
133+
});
137134
}
138-
if (!result) agent.resumeEvaluate({});
139-
runJobQueue();
140-
});
135+
}
136+
if (state.get('mode') === 'script') {
137+
result = realm.evaluateScript(code, { specifier: 'code.js' }, handleResult);
138+
} else {
139+
result = realm.evaluateModule(code, 'code.mjs', handleResult);
140+
}
141+
if (!result) agent.resumeEvaluate({});
142+
runJobQueue();
141143
}
142144
});

0 commit comments

Comments
 (0)