Skip to content

Commit f87f90f

Browse files
matteosuppofacchinm
authored andcommitted
Use a faster implementation to avoid crashes when reading a lot of data
1 parent c5d5060 commit f87f90f

File tree

1 file changed

+10
-6
lines changed

1 file changed

+10
-6
lines changed

main.go

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -310,14 +310,18 @@ const homeTemplateHtml = `<!DOCTYPE html>
310310
311311
var socket;
312312
var msg = $("#msg");
313-
var log = $("#log");
313+
var log = document.getElementById('log');
314+
var messages = [];
314315
315316
function appendLog(msg) {
316-
var d = log[0]
317-
var doScroll = d.scrollTop == d.scrollHeight - d.clientHeight;
318-
msg.appendTo(log)
317+
messages.push(msg);
318+
if (messages.length > 100) {
319+
messages.shift();
320+
}
321+
var doScroll = log.scrollTop == log.scrollHeight - log.clientHeight;
322+
log.innerHTML = messages.join("<br>");
319323
if (doScroll) {
320-
d.scrollTop = d.scrollHeight - d.clientHeight;
324+
log.scrollTop = log.scrollHeight - log.clientHeight;
321325
}
322326
}
323327
@@ -343,7 +347,7 @@ const homeTemplateHtml = `<!DOCTYPE html>
343347
appendLog($("<div><b>Connection closed.</b></div>"))
344348
});
345349
socket.on("message", function(evt) {
346-
appendLog($("<div/>").text(evt))
350+
appendLog(evt);
347351
});
348352
} else {
349353
appendLog($("<div><b>Your browser does not support WebSockets.</b></div>"))

0 commit comments

Comments
 (0)