about summary refs log tree commit diff stats
path: root/worker
diff options
context:
space:
mode:
authorReto Brunner <reto@labrat.space>2020-08-07 09:49:47 +0200
committerReto Brunner <reto@labrat.space>2020-08-07 09:49:57 +0200
commit7a9fe3824f49905f46700a4620cce97fdd32b3eb (patch)
tree82aa51b8765d78912435a29f4d5a31d68c1b6803 /worker
parent1023dd95883a3af8f86492a081b48f30ba000755 (diff)
downloadaerc-7a9fe3824f49905f46700a4620cce97fdd32b3eb.tar.gz
notmuch: manually close notmuch objects
There seems to be some race with the automatic closing that should happen
in theory... close it manually where we can to avoid the issue
Diffstat (limited to 'worker')
-rw-r--r--worker/notmuch/lib/database.go3
1 files changed, 3 insertions, 0 deletions
diff --git a/worker/notmuch/lib/database.go b/worker/notmuch/lib/database.go
index 1b0771c..cdedcb9 100644
--- a/worker/notmuch/lib/database.go
+++ b/worker/notmuch/lib/database.go
@@ -122,10 +122,12 @@ func (db *DB) MsgIDsFromQuery(q string) ([]string, error) {
 		if err != nil {
 			return err
 		}
+		defer query.Close()
 		msgs, err := query.Messages()
 		if err != nil {
 			return err
 		}
+		defer msgs.Close()
 		var msg *notmuch.Message
 		for msgs.Next(&msg) {
 			msgIDs = append(msgIDs, msg.ID())
@@ -189,6 +191,7 @@ func (db *DB) MsgTags(key string) ([]string, error) {
 		}
 		defer msg.Close()
 		ts := msg.Tags()
+		defer ts.Close()
 		var tag *notmuch.Tag
 		for ts.Next(&tag) {
 			tags = append(tags, tag.Value)