summaryrefslogtreecommitdiff
path: root/service/pixelated/adapter
diff options
context:
space:
mode:
Diffstat (limited to 'service/pixelated/adapter')
-rw-r--r--service/pixelated/adapter/pixelated_mailbox.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/service/pixelated/adapter/pixelated_mailbox.py b/service/pixelated/adapter/pixelated_mailbox.py
index a5b07660..2723dfc1 100644
--- a/service/pixelated/adapter/pixelated_mailbox.py
+++ b/service/pixelated/adapter/pixelated_mailbox.py
@@ -61,7 +61,10 @@ class PixelatedMailbox:
for removed_tag in removed_tags:
tag = self.tag_index.get(removed_tag)
tag.decrement(mail_ident)
- self.tag_index.set(tag)
+ if tag.total == 0:
+ self.tag_index.remove(tag.name)
+ else:
+ self.tag_index.set(tag)
for added_tag in added_tags:
tag = self.tag_index.get(added_tag) or Tag(added_tag)
tag.increment(mail_ident)