From 990ec5cd5cb8c44d670c47f886f480483044c378 Mon Sep 17 00:00:00 2001 From: Phantom <59059173+EurFelux@users.noreply.github.com> Date: Wed, 2 Jul 2025 11:34:53 +0800 Subject: [PATCH] fix(MessageMenubar): Add check for empty relatedUserMessageBlocks to prevent errors (#7733) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix(MessageMenubar): 修复未找到相关用户消息块时的处理逻辑 添加对relatedUserMessageBlocks为空的检查,避免后续逻辑报错 * fix(MessageMenubar): 修复检查消息块类型时的空引用问题 --- src/renderer/src/pages/home/Messages/MessageMenubar.tsx | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/renderer/src/pages/home/Messages/MessageMenubar.tsx b/src/renderer/src/pages/home/Messages/MessageMenubar.tsx index 6426ec6213..ea5e043c33 100644 --- a/src/renderer/src/pages/home/Messages/MessageMenubar.tsx +++ b/src/renderer/src/pages/home/Messages/MessageMenubar.tsx @@ -346,7 +346,7 @@ const MessageMenubar: FC = (props) => { return () => true } const state = store.getState() - const topicMessages = selectMessagesForTopic(state, topic.id) + const topicMessages: Message[] = selectMessagesForTopic(state, topic.id) // 理论上助手消息只会关联一条用户消息 const relatedUserMessage = topicMessages.find((msg) => { return msg.role === 'user' && message.askId === msg.id @@ -360,7 +360,11 @@ const MessageMenubar: FC = (props) => { messageBlocksSelectors.selectById(store.getState(), msgBlockId) ) - if (relatedUserMessageBlocks.some((block) => block.type === MessageBlockType.IMAGE)) { + if (!relatedUserMessageBlocks) { + return () => true + } + + if (relatedUserMessageBlocks.some((block) => block && block.type === MessageBlockType.IMAGE)) { return (m: Model) => isVisionModel(m) } else { return () => true