diff --git a/src/common/playlists/PlayThumbnail.jsx b/src/common/playlists/PlayThumbnail.jsx index 3de51e1004..97791d3055 100644 --- a/src/common/playlists/PlayThumbnail.jsx +++ b/src/common/playlists/PlayThumbnail.jsx @@ -25,13 +25,27 @@ const PlayThumbnail = ({ play }) => { const loadCover = async () => { try { if (play.cover) { - setCover(play.cover); + const img = new Image(); + img.onload = () => { + setCover(play.cover); + }; + img.onerror = async () => { + const image = await loadCoverImage(play.slug); + setCover(image); + }; + img.src = play.cover; } else { const image = await loadCoverImage(play.slug); setCover(image); } } catch (error) { console.error(error); + try { + const image = await loadCoverImage(play.slug); + setCover(image); + } catch (fallbackError) { + console.error('Failed to load both external and local images:', fallbackError); + } } }; loadCover(); diff --git a/src/plays/password-generator/cover.png b/src/plays/password-generator/cover.png new file mode 100644 index 0000000000..c209e7972e Binary files /dev/null and b/src/plays/password-generator/cover.png differ