From 7256c70108c17dbf04a3723d29b829b0fd7dffef Mon Sep 17 00:00:00 2001
From: Nicolas Werner <nicolas.werner@hotmail.de>
Date: Fri, 25 Mar 2022 18:40:27 +0100
Subject: [PATCH] Fix crash on missing pack description

---
 src/Cache.cpp | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/Cache.cpp b/src/Cache.cpp
index be3dfe697..30077850d 100644
--- a/src/Cache.cpp
+++ b/src/Cache.cpp
@@ -3708,8 +3708,10 @@ Cache::getImagePacks(const std::string &room_id, std::optional<bool> stickers)
     auto addPack = [&infos, stickers](const mtx::events::msc2545::ImagePack &pack,
                                       const std::string &source_room,
                                       const std::string &state_key) {
-        bool pack_matches = !stickers.has_value() ||
-                            (stickers.value() ? pack.pack->is_sticker() : pack.pack->is_emoji());
+        bool pack_is_sticker = pack.pack ? pack.pack->is_sticker() : true;
+        bool pack_is_emoji   = pack.pack ? pack.pack->is_emoji() : true;
+        bool pack_matches =
+          !stickers.has_value() || (stickers.value() ? pack_is_sticker : pack_is_emoji);
 
         ImagePackInfo info;
         info.source_room = source_room;
-- 
GitLab