From 0ad4cf47b65ec985f6a2eba27403b852ba8b3ff2 Mon Sep 17 00:00:00 2001 From: automated-signal <37887102+automated-signal@users.noreply.github.com> Date: Fri, 2 Aug 2024 17:47:55 -0500 Subject: [PATCH] Improve performance of link preview parsing Co-authored-by: trevor-signal <131492920+trevor-signal@users.noreply.github.com> --- ts/linkPreviews/linkPreviewFetch.ts | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/ts/linkPreviews/linkPreviewFetch.ts b/ts/linkPreviews/linkPreviewFetch.ts index 9dc038d30f..97e0de7bce 100644 --- a/ts/linkPreviews/linkPreviewFetch.ts +++ b/ts/linkPreviews/linkPreviewFetch.ts @@ -290,8 +290,6 @@ const getHtmlDocument = async ( abortSignal: AbortSignal, logger: Pick = log ): Promise => { - let result: HTMLDocument = emptyHtmlDocument(); - const buffer = new Uint8Array(MAX_HTML_BYTES_TO_LOAD); let bytesLoadedSoFar = 0; @@ -313,8 +311,6 @@ const getHtmlDocument = async ( buffer.set(truncatedChunk, bytesLoadedSoFar); bytesLoadedSoFar += truncatedChunk.byteLength; - result = parseHtmlBytes(buffer.slice(0, bytesLoadedSoFar), httpCharset); - const hasLoadedMaxBytes = bytesLoadedSoFar >= buffer.length; if (hasLoadedMaxBytes) { break; @@ -326,6 +322,7 @@ const getHtmlDocument = async ( ); } + const result = parseHtmlBytes(buffer.slice(0, bytesLoadedSoFar), httpCharset); return result; };