diff --git a/app/src/main/java/org/thoughtcrime/securesms/database/SQLiteDatabase.java b/app/src/main/java/org/thoughtcrime/securesms/database/SQLiteDatabase.java index b21193b1b6..618dcc56a7 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/database/SQLiteDatabase.java +++ b/app/src/main/java/org/thoughtcrime/securesms/database/SQLiteDatabase.java @@ -13,6 +13,7 @@ import net.zetetic.database.sqlcipher.SQLiteTransactionListener; import org.signal.core.util.tracing.Tracer; import java.util.HashMap; +import java.util.HashSet; import java.util.LinkedHashSet; import java.util.Locale; import java.util.Map; @@ -201,7 +202,7 @@ public class SQLiteDatabase { @Override public void onCommit() { Set tasks = getPostTransactionTasks(); - for (Runnable r : tasks) { + for (Runnable r : new HashSet<>(tasks)) { r.run(); } tasks.clear();