liveBlock.append was doing `pre.textContent += chunk` on every streamed chunk. textContent's setter wipes all existing child nodes and creates a single new text node from the concatenated read+new value — perfectly correct semantically but under a fast C-tier emit loop (one chunk per (newline) printf) the per-update restringify was visibly dropping line breaks, rendering tick 0tick 10000tick 20000tick 30000… horizontally instead of stacking vertically. `pre.appendChild(document.createTextNode(chunk))` appends a new text node alongside existing ones — no read-back, no restringify. Browser renders the sequence of text nodes as concatenated text inside the <pre> which already has `white-space: pre`, so every embedded \n produces a real line break. Pairs with the c-tier loader's `currentOnChunk(line + "\n")` fix: loader adds the \n that Emscripten's Module.print convention stripped, append preserves the \n end-to-end into the DOM. |
||
|---|---|---|
| .. | ||
| asm | ||
| c | ||
| demos | ||
| fonts/chunkfive | ||
| python | ||
| app.js | ||
| crypto.js | ||
| index.html | ||
| lumbda-logo-green.png | ||
| runner.js | ||
| style.css | ||
| worker.mjs | ||