From 2509a288132e09f8a400e148b821c8237c738670 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=81=8B=E3=81=A3=E3=81=93=E3=81=8B=E3=82=8A?= <67428053+kakkokari-gtyih@users.noreply.github.com> Date: Tue, 28 Jul 2026 11:11:56 +0900 Subject: [PATCH] Merge commit from fork --- packages/frontend/src/ui/_common_/statusbar-rss.vue | 6 +++++- packages/frontend/src/widgets/WidgetRss.vue | 6 +++++- packages/frontend/src/widgets/WidgetRssTicker.vue | 6 +++++- 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/packages/frontend/src/ui/_common_/statusbar-rss.vue b/packages/frontend/src/ui/_common_/statusbar-rss.vue index 202972ed46..2ae8eb9889 100644 --- a/packages/frontend/src/ui/_common_/statusbar-rss.vue +++ b/packages/frontend/src/ui/_common_/statusbar-rss.vue @@ -53,7 +53,11 @@ const tick = () => { if (props.shuffle) { shuffle(feed.items); } - items.value = feed.items; + items.value = feed.items.filter((item) => { + if (!item.link) return false; + const itemUrl = new URL(item.link); + return ['http:', 'https:'].includes(itemUrl.protocol); + }); fetching.value = false; key.value++; }); diff --git a/packages/frontend/src/widgets/WidgetRss.vue b/packages/frontend/src/widgets/WidgetRss.vue index dae3b270d4..f561f204f6 100644 --- a/packages/frontend/src/widgets/WidgetRss.vue +++ b/packages/frontend/src/widgets/WidgetRss.vue @@ -81,7 +81,11 @@ const tick = () => { window.fetch(fetchEndpoint.value, {}) .then(res => res.json()) .then((feed: Misskey.entities.FetchRssResponse) => { - rawItems.value = feed.items; + rawItems.value = feed.items.filter((item) => { + if (!item.link) return false; + const itemUrl = new URL(item.link); + return ['http:', 'https:'].includes(itemUrl.protocol); + }); fetching.value = false; }); }; diff --git a/packages/frontend/src/widgets/WidgetRssTicker.vue b/packages/frontend/src/widgets/WidgetRssTicker.vue index 246b96fca0..2cff5a099b 100644 --- a/packages/frontend/src/widgets/WidgetRssTicker.vue +++ b/packages/frontend/src/widgets/WidgetRssTicker.vue @@ -121,7 +121,11 @@ const tick = () => { window.fetch(fetchEndpoint.value, {}) .then(res => res.json()) .then((feed: Misskey.entities.FetchRssResponse) => { - rawItems.value = feed.items; + rawItems.value = feed.items.filter((item) => { + if (!item.link) return false; + const itemUrl = new URL(item.link); + return ['http:', 'https:'].includes(itemUrl.protocol); + }); fetching.value = false; key.value++; });