From b1987219690ff9b36bb9c213e1e71e44fd5c66fa Mon Sep 17 00:00:00 2001 From: JephDiel Date: Thu, 12 Mar 2026 22:20:19 -0500 Subject: [PATCH] Ignore stale downloads If src or sizePx changes while we're downloading, discard the now-stale fetch result so we don't override the fresh one. --- src/Avatar.tsx | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/Avatar.tsx b/src/Avatar.tsx index 8d89865e..d7768d6f 100644 --- a/src/Avatar.tsx +++ b/src/Avatar.tsx @@ -110,16 +110,24 @@ export const Avatar: FC = ({ } let objectUrl: string | undefined; + let stale = false; blob .then((blob) => { + if (stale) { + return; + } objectUrl = URL.createObjectURL(blob); setAvatarUrl(objectUrl); }) .catch((ex) => { + if (stale) { + return; + } setAvatarUrl(undefined); }); return (): void => { + stale = true; if (objectUrl) { URL.revokeObjectURL(objectUrl); }