From a30eede3ad4c1fae2bb052bd0beddfc562347730 Mon Sep 17 00:00:00 2001 From: Alexander Zinchuk Date: Sat, 15 Apr 2023 13:51:57 +0200 Subject: [PATCH] Stickers: Correct processing of sticker updates with non-existent identifiers (#2993) --- src/global/actions/apiUpdaters/misc.ts | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/global/actions/apiUpdaters/misc.ts b/src/global/actions/apiUpdaters/misc.ts index acc63c7d2..07bed7269 100644 --- a/src/global/actions/apiUpdaters/misc.ts +++ b/src/global/actions/apiUpdaters/misc.ts @@ -54,9 +54,13 @@ addActionHandler('apiUpdate', (global, actions, update): ActionReturnType => { actions.loadStickerSets(); break; - case 'updateStickerSetsOrder': - actions.reorderStickerSets({ order: update.order, isCustomEmoji: update.isCustomEmoji }); + case 'updateStickerSetsOrder': { + // Filter out invalid set IDs, which may be sent by the server + const order = update.order.filter((setId) => Boolean(global.stickers.setsById[setId])); + + actions.reorderStickerSets({ order, isCustomEmoji: update.isCustomEmoji }); break; + } case 'updateSavedGifs': actions.loadSavedGifs();