diff --git a/backup_imap/backup_imap.py b/backup_imap/backup_imap.py index 8e07c22..e9e567f 100644 --- a/backup_imap/backup_imap.py +++ b/backup_imap/backup_imap.py @@ -68,7 +68,7 @@ class BackupImap: if mailbox == '': real_mailbox = 'INBOX' else: - real_mailbox = mailbox.encode() + real_mailbox = mailbox self.imap.select(mailbox=f"\"{real_mailbox}\"", readonly=False) self._log.debug( "Searching for all messages in '%s'...", @@ -100,6 +100,14 @@ class BackupImap: msg_counter += 1 fetch_response, fetch_data = self.imap.fetch(message_uid, "(RFC822)") if fetch_response == 'OK': + store_result, unseen_data = self.imap.store(message_uid, '-FLAGS', '\\Seen') + if store_result != 'OK': + self._log.error( + "Error marking as unseen the message '%s'. %s", + message_uid, + unseen_data + ) + sys.exit(6) subject = f'__no_subject__{message_uid}' data = fetch_data[0][1] subject_match = re.search(rb'Subject: (.*)\r\n', data)