From 8ce2af16fb0f7949ab260b450df7c7a36443af1e Mon Sep 17 00:00:00 2001 From: Cohee <18619528+Cohee1207@users.noreply.github.com> Date: Sun, 30 Jun 2024 19:20:39 +0300 Subject: [PATCH] Fix endless animation if recaption is aborted --- public/scripts/extensions/caption/index.js | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/public/scripts/extensions/caption/index.js b/public/scripts/extensions/caption/index.js index db3253dca..b47f73a2f 100644 --- a/public/scripts/extensions/caption/index.js +++ b/public/scripts/extensions/caption/index.js @@ -520,12 +520,17 @@ jQuery(async function () { const messageImg = messageBlock.find('.mes_img'); if (messageImg.hasClass(animationClass)) return; messageImg.addClass(animationClass); - const index = Number(messageBlock.attr('mesid')); - const data = getContext().chat[index]; - await captionExistingMessage(data); - appendMediaToMessage(data, messageBlock, false); - await saveChatConditional(); - messageImg.removeClass(animationClass); + try { + const index = Number(messageBlock.attr('mesid')); + const data = getContext().chat[index]; + await captionExistingMessage(data); + appendMediaToMessage(data, messageBlock, false); + await saveChatConditional(); + } catch(e) { + console.error('Message image recaption failed', e); + } finally { + messageImg.removeClass(animationClass); + } }); SlashCommandParser.addCommandObject(SlashCommand.fromProps({ name: 'caption',