From 69fa952189113e6b1a59afe78c441046ef1652d9 Mon Sep 17 00:00:00 2001 From: M66B Date: Mon, 21 Apr 2025 09:28:56 +0200 Subject: [PATCH] Prevent crash on set/toArray --- .../java/eu/faircode/email/FragmentMessages.java | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/FragmentMessages.java b/app/src/main/java/eu/faircode/email/FragmentMessages.java index a69f6c8118..ad6fb076d5 100644 --- a/app/src/main/java/eu/faircode/email/FragmentMessages.java +++ b/app/src/main/java/eu/faircode/email/FragmentMessages.java @@ -5577,9 +5577,15 @@ public class FragmentMessages extends FragmentBase outState.putInt("fair:autoCloseCount", autoCloseCount); outState.putInt("fair:lastSentCount", lastSentCount); - outState.putStringArray("fair:values", values.keySet().toArray(new String[0])); - for (String name : values.keySet()) - outState.putLongArray("fair:name:" + name, Helper.toLongArray(values.get(name))); + List keys = new ArrayList<>(); + for (String name : values.keySet()) { + List ids = values.get(name); + if (ids != null) { + keys.add(name); + outState.putLongArray("fair:name:" + name, Helper.toLongArray(ids)); + } + } + outState.putStringArray("fair:values", keys.toArray(new String[0])); if (rvMessage != null) { Parcelable rv = rvMessage.getLayoutManager().onSaveInstanceState();