From 919c3fd9998f4a3c08fd41b4c44aa4d7bc761b3e Mon Sep 17 00:00:00 2001 From: j433866 Date: Tue, 28 May 2019 15:01:49 +0100 Subject: [PATCH] Fix display file slice displaying raw instead of presented data. Fix errored filter when searching for tabs. --- src/web/OutputWaiter.mjs | 27 ++++++++++++++++++++++----- 1 file changed, 22 insertions(+), 5 deletions(-) diff --git a/src/web/OutputWaiter.mjs b/src/web/OutputWaiter.mjs index 01844086..92387921 100755 --- a/src/web/OutputWaiter.mjs +++ b/src/web/OutputWaiter.mjs @@ -1115,13 +1115,18 @@ class OutputWaiter { sliceToEl = document.getElementById("output-file-slice-to"), sliceFrom = parseInt(sliceFromEl.value, 10), sliceTo = parseInt(sliceToEl.value, 10), - dish = this.outputs[this.getActiveTab()].data.dish, - dishBuffer = await this.getDishBuffer(dish), - str = Utils.arrayBufferToStr(dishBuffer.slice(sliceFrom, sliceTo)); + output = this.outputs[this.getActiveTab()].data; + + let str; + if (output.type === "ArrayBuffer") { + str = Utils.arrayBufferToStr(output.result.slice(sliceFrom, sliceTo)); + } else { + str = Utils.arrayBufferToStr(await this.getDishBuffer(output.dish).slice(sliceFrom, sliceTo)); + } outputText.classList.remove("blur"); showFileOverlay.style.display = "block"; - outputText.value = str; + outputText.value = Utils.printable(str, true); outputText.style.display = "block"; @@ -1343,7 +1348,19 @@ class OutputWaiter { inputNum: iNum, textDisplay: outDisplay[output.status] }); - } else if (output.status === "baked" && showBaked) { + } else if (output.status === "baked" && showBaked && output.progress === false) { + let data = this.getOutput(iNum, false).slice(0, 4096); + if (typeof data !== "string") { + data = Utils.arrayBufferToStr(data); + } + data = data.replace(/[\r\n]/g, ""); + if (data.toLowerCase().includes(contentFilter)) { + results.push({ + inputNum: iNum, + textDisplay: data.slice(0, 100) + }); + } + } else if (output.progress !== false && showErrored) { let data = this.getOutput(iNum, false).slice(0, 4096); if (typeof data !== "string") { data = Utils.arrayBufferToStr(data);