diff --git a/tools/server/public_simplechat/simplechat.js b/tools/server/public_simplechat/simplechat.js
index 925a181dbf..6b897448c2 100644
--- a/tools/server/public_simplechat/simplechat.js
+++ b/tools/server/public_simplechat/simplechat.js
@@ -678,6 +678,7 @@ class MultiChatUI {
})
tools.setup((name, data)=>{
+ clearTimeout(this.idTimeOut)
this.elInUser.value = `${data}`
this.ui_reset_userinput(false)
})
@@ -791,7 +792,7 @@ class MultiChatUI {
this.elInUser.value = `${toolResult}`
this.ui_reset_userinput(false)
} else {
- setTimeout(() => {
+ this.idTimeOut = setTimeout(() => {
this.elInUser.value = `Tool/Function call ${toolname} taking too much time, aborting...`
this.ui_reset_userinput(false)
}, 10000)
diff --git a/tools/server/public_simplechat/tools.mjs b/tools/server/public_simplechat/tools.mjs
index 4ece70ae56..75fe56e4f4 100644
--- a/tools/server/public_simplechat/tools.mjs
+++ b/tools/server/public_simplechat/tools.mjs
@@ -8,7 +8,7 @@
import * as tjs from './tooljs.mjs'
-let gToolsWorker = new Worker('./toolsworker.mjs');
+let gToolsWorker = new Worker('./toolsworker.mjs', { type: 'module' });
/**
* @type {Object>}
*/
diff --git a/tools/server/public_simplechat/toolsworker.mjs b/tools/server/public_simplechat/toolsworker.mjs
index d17b772b4f..e370fd0a9d 100644
--- a/tools/server/public_simplechat/toolsworker.mjs
+++ b/tools/server/public_simplechat/toolsworker.mjs
@@ -13,9 +13,8 @@
import * as tconsole from "./toolsconsole.mjs"
-tconsole.console_redir()
-
self.onmessage = function (ev) {
+ tconsole.console_redir()
try {
eval(ev.data.code)
} catch (/** @type {any} */error) {