From 626fc09865ac89e1771344aee851e8e6c9422848 Mon Sep 17 00:00:00 2001 From: Ceebug Date: Tue, 13 Oct 2026 21:56:49 +1100 Subject: [PATCH] Fail back correctly when no higher quality PFP exists Signed-off-by: Ceebug --- packages/ui/src/components/base/FullImage.vue | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/packages/ui/src/components/base/FullImage.vue b/packages/ui/src/components/base/FullImage.vue index dfdfdd0ca7d..84c7b668ed3 100644 --- a/packages/ui/src/components/base/FullImage.vue +++ b/packages/ui/src/components/base/FullImage.vue @@ -28,17 +28,20 @@ function swapImageSrc( const originalSrc = imgEl.src if (originalSrc === fullUrl) return - imgEl.src = fullUrl - let reverted = false const revert = () => { if (reverted) return reverted = true + imgEl.removeEventListener('error', onError) imgEl.src = originalSrc for (const { target, type, capture } of revertTargets) { target.removeEventListener(type, revert, capture) } } + const onError = () => revert() + + imgEl.addEventListener('error', onError, { once: true }) + imgEl.src = fullUrl for (const { target, type, capture } of revertTargets) { target.addEventListener(type, revert, capture) @@ -67,4 +70,5 @@ function onDragStart(event: DragEvent) { event.dataTransfer.setData('text/uri-list', props.rawSrc) event.dataTransfer.setData('text/plain', props.rawSrc) } +