fixed delayed WS bug

This commit is contained in:
MathMan05 2024-07-30 21:04:23 -05:00
parent ebea3af112
commit fb4721196b
2 changed files with 36 additions and 19 deletions

View file

@ -157,16 +157,24 @@ class Localuser {
w.write(arr.buffer); w.write(arr.buffer);
arr = new Uint8Array(); arr = new Uint8Array();
//console.log(data,test); //console.log(data,test);
const read = (await r.read()); while (true) {
const data = new TextDecoder().decode(read.value); const read = (await r.read());
build += data; const data = new TextDecoder().decode(read.value);
console.log("temp"); if (data === "") {
try { break;
temp = JSON.parse(build); }
build = ""; build += data;
} console.log("temp");
catch { try {
return; temp = JSON.parse(build);
build = "";
if (temp.op === 0 && temp.t === "READY") {
returny();
}
this.handleEvent(temp);
}
catch {
}
} }
} }
else { else {

View file

@ -167,15 +167,23 @@ class Localuser{
w.write(arr.buffer); w.write(arr.buffer);
arr=new Uint8Array(); arr=new Uint8Array();
//console.log(data,test); //console.log(data,test);
const read=(await r.read()); while(true){
const data=new TextDecoder().decode(read.value); const read=(await r.read());
build+=data; const data=new TextDecoder().decode(read.value);
console.log("temp"); if(data===""){
try{ break;
temp=JSON.parse(build); }
build=""; build+=data;
}catch{ console.log("temp");
return; try{
temp=JSON.parse(build);
build="";
if(temp.op===0&&temp.t==="READY"){
returny();
}
this.handleEvent(temp);
}catch{
}
} }
}else{ }else{
temp=JSON.parse(event.data); temp=JSON.parse(event.data);
@ -184,6 +192,7 @@ class Localuser{
returny(); returny();
} }
this.handleEvent(temp); this.handleEvent(temp);
}); });
this.ws.addEventListener("close", event => { this.ws.addEventListener("close", event => {