diff --git a/Packages/MagnumOpusCore/Sources/MailStore/MailStore.swift b/Packages/MagnumOpusCore/Sources/MailStore/MailStore.swift index a4e7aad..971af6c 100644 --- a/Packages/MagnumOpusCore/Sources/MailStore/MailStore.swift +++ b/Packages/MagnumOpusCore/Sources/MailStore/MailStore.swift @@ -61,12 +61,11 @@ public final class MailStore: Sendable { try dbWriter.write { db in var inserted: [MessageRecord] = [] for message in messages { - // Check if a message with this (mailboxId, uid) already exists - let exists = try MessageRecord.fetchOne(db, sql: - "SELECT id FROM message WHERE mailboxId = ? AND uid = ?", + let count = try Int.fetchOne(db, sql: + "SELECT COUNT(*) FROM message WHERE mailboxId = ? AND uid = ?", arguments: [message.mailboxId, message.uid] - ) - if exists == nil { + ) ?? 0 + if count == 0 { try message.insert(db) inserted.append(message) }